2 votos

¿Cómo instalar nuevos módulos de Python en la aplicación Dcoder?

La aplicación Dcoder admite el lenguaje de programación Python. Sin embargo, para un código que requiere módulos de terceros (por ejemplo, mlxtend), mostrará el siguiente error al ejecutarlo:

La aplicación Dcoder mostrando el error

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

Proceso finalizado con código de salida 1.

¿Cómo instalar nuevos módulos de Python en la aplicación Dcoder?

0 votos

¿Dcoder tiene una consola? Esto puede estar fuera del alcance de este sitio, pero es posible que puedas usar el módulo pip para instalar tu módulo faltante.

0voto

Andrew T. Puntos 2107

A partir del 2 de febrero de 2020, Dcoder no admite módulos de terceros.

Esta fue la declaración de su desarrollador en Twitter

Actualmente no admitimos módulos de terceros, estamos trabajando en la integración de módulos de terceros, manténgase atento a nuestras actualizaciones.


A continuación se muestra mi razonamiento personal antes de recibir su respuesta.

La razón es, como se indica en la descripción de su aplicación, utiliza un servicio en la nube en línea para compilar y ejecutar el código.

Descargo de responsabilidad: Dcoder utiliza una serie de compiladores en la nube fuertes para compilar el código y mostrar la salida, [...]

[...]

Dcoder es un compilador en línea, ahora ejecuta, compila y ejecuta tus fragmentos de código en tus propios dispositivos móviles Android.

En pocas palabras, Dcoder no instala Python ni compila el código en el dispositivo del usuario. En su lugar, la aplicación funciona como un editor de código, envía el código al compilador en línea y lo ejecuta, luego regresa y muestra el resultado en la aplicación. Como tal, los módulos están restringidos a su compilador en línea.

Para enumerar qué módulos están instalados, ejecuta el siguiente código en 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))

Código modificado de Tablero de discusión de SOLOLEARN

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X