使用TerminalIDE的Android上的Python 3



我想在我的Android设备上编写Python 3。所以我浏览了Lanky Cyril关于使用终端IDE的博客文章,把我需要做的所有代码都放在Android终端上。对于安装在博客上的Python2.X来说,它就像一个魅力。

因此,我使用相同的说明安装了Python3。这是我尝试启动Python3:时得到的结果

terminal++:~$ ~/python3                                                                                                                                              
Fatal Python error: Py_Initialize: unable to load the file system codec
LookupError: no codec search functions registered: can't find encoding
Segmentation fault 

我确定:

export PYTHONHOME=/data/data/com.googlecode.python3forandroid/files/python3
export PYTHONPATH=${PYTHONHOME}/lib/python3.2/lib-dynload

我还检查了为什么python 3没有在StackOverflow上加载。

所以问题可能是python的构建。有人解决过这个问题吗?

我通过访问Python for Android(Py4A)主页找到了解决方案,并找到了允许Python3在Android上作为"独立"运行的脚本。

有三种方法可以做到这一点:

  • 我创建了"standalone.sh"脚本,并将其保存在"HOME"(export HOME=/data/data/com.spartacusrex.spartacuside/files)中,将其模式更改为可执行,调用它并出现python。

  • 我打开~/.bashrc并粘贴复制的代码:

export EXTERNAL_STORAGE=/mnt/sdcard/com.googlecode.python3forandroid
export PY34A=/data/data/com.googlecode.python3forandroid/files/python3
export PY4A_EXTRAS=$EXTERNAL_STORAGE/extras
PYTHONPATH=$EXTERNAL_STORAGE/extras/python3
PYTHONPATH=${PYTHONPATH}:$PY34A/lib/python3.2/lib-dynload
export PYTHONPATH
export TEMP=$EXTERNAL_STORAGE/extras/python3/tmp
export PYTHON_EGG_CACHE=$TEMP
export PYTHONHOME=$PY34A
export LD_LIBRARY_PATH=$PY34A/lib
$PYTHONHOME/bin/python3 "$@"

请注意,这意味着每次启动终端IDE时,您都会自动加载Python,并在Python提示下找到自己。

  • 要以正常方式启动Python,如Lanky Cyril所示,请在.bashrc中粘贴以下代码:
export EXTERNAL_STORAGE=/mnt/sdcard/com.googlecode.python3forandroid
export PY34A=/data/data/com.googlecode.python3forandroid/files/python3
export PY4A_EXTRAS=$EXTERNAL_STORAGE/extras
PYTHONPATH=$EXTERNAL_STORAGE/extras/python3
PYTHONPATH=${PYTHONPATH}:$PY34A/lib/python3.2/lib-dynload
export PYTHONPATH
export TEMP=$EXTERNAL_STORAGE/extras/python3/tmp
export PYTHON_EGG_CACHE=$TEMP
export PYTHONHOME=$PY34A
export LD_LIBRARY_PATH=$PY34A/lib

您会注意到第二个解决方案中的最后一行已被取出并放入可执行文件"~/python"中。这是代码:

#!/system/bin/sh   
/data/data/com.googlecode.python3forandroid/files/python3/bin/python3 "$@"

我使用了第二个,这样当我启动终端IDE时,我会立即得到Python提示。我安装了第三个解决方案,这样,如果我离开Python提示符,我就可以回到同一个终端会话。

相关内容

  • 没有找到相关文章

最新更新