2 votes

Comment installer de nouveaux modules Python dans l'application Dcoder ?

En Dcoder supporte le langage de programmation Python. Cependant, pour un code qui nécessite des modules tiers (par ex. mlxtend ), il affichera l'erreur suivante lors de son exécution :

Dcoder app showing the error

Traceback (most recent call last):
  File "fun.py", line 7, in <module>
    from mlxtend.data import iris_data
ImportError: No module named mlxtend.data

Process finished with exit code 1.

Comment installer de nouveaux modules Python dans l'application Dcoder ?

0voto

Andrew T. Points 12017

A partir de 2 février 2020 , Dcoder ne prend pas en charge les modules de tierces parties.

Voici la déclaration de leur développeur sur Twitter

Actuellement, nous ne prenons pas en charge les modules tiers, mais nous travaillons à l'intégration de modules tiers, surveillez nos mises à jour.


Voici mon raisonnement personnel avant de recevoir leur réponse.

En effet, comme l'indique la description de l'application, celle-ci utilise un service en ligne pour compiler et exécuter le code.

Avertissement : Dcoder utilise un ensemble de compilateurs puissants basés sur le cloud pour compiler le code et afficher la sortie, [...]

[...]

Dcoder est un compilateur en ligne, qui permet de lancer, de compiler et d'exécuter vos extraits de code sur vos propres appareils mobiles Android.

En clair, Dcoder n'installe pas Python et ne compile pas le code sur l'appareil de l'utilisateur. Au lieu de cela, l'application fonctionne comme un éditeur de code, envoie le code au compilateur en ligne et l'exécute, puis revient et affiche le résultat sur l'application. Ainsi, les modules sont limités à leur compilateur en ligne.

Pour obtenir la liste des modules installés, exécutez la commande le code suivant sur Dcoder

set1=set2=set3="None"

set1 = 'list(k[1] for k in pkgutil.iter_modules())'
set2 = 's.modules.keys()'
set3 = 's.builtin_module_names'

import pkgutil, sys as s
def calculate(what): return eval(what)

print(calculate(set1))
print(calculate(set2))
print(calculate(set3))

Code modifié à partir de Forum de discussion de SOLOLEARN

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X