2

我是安卓新手。我正在运行带有 ICS 的 ASUS Eee Pad Transformer TF101。我安装了终端 IDE 应用程序并运行python. 表面上,我正在运行 2.6.2。但是,当我跑步时

>>> import random

它给了我一个ImportError.

是什么赋予了?我是否必须 root 我的设备才能使用基本的 2.6 模块?

4

3 回答 3

3

有同样的问题,我偶然发现了这个链接,它提供了一个简单的“python”脚本......但我不太确定这样的东西有多有用。

请注意,以下内容仅将 python 与终端 IDE 一起使用,并且我没有将任何内容链接到 /system/bin,因为不是每个安装了终端 IDE 的人都希望拥有 root,因此我们的 python 脚本保存在终端 IDE 的家中,然后将其添加到 .bashrc 中的路径中。

将以下文件创建为 ~/python:

#!/system/bin/sh
BASE=/data/data/com.googlecode.pythonforandroid/files/python
export PYTHONPATH=${PYTHONPATH}:${BASE}/lib/python2.6/lib-dynload
export PYTHONHOME=${BASE}
export LD_LIBRARY_PATH=${BASE}/lib
${BASE}/bin/python "$@"

然后使其可执行并在 ~/.bashrc 中将 ~/ 添加到我的 $PATH 中:

terminal++@127.0.0.1:~$ chmod +x ~/python
terminal++@127.0.0.1:~$ echo export PATH=$PATH:~/ >> ~/.bashrc

现在,当您重新启动终端 IDE 时,您应该能够输入“python”来获取交互式 python 解释器!

于 2012-12-21T22:39:52.053 回答
0

据我所知,Play Store 上的终端仿真器都没有访问标准库的权限。我终于找到了一个名为 SL4A 的系统。我安装了它,并在此处遵循用户指南:

http://code.google.com/p/android-scripting/wiki/UserGuide

我已经安装了 Python 解释器并成功导入了random.

于 2012-06-09T19:52:48.793 回答
0

lankycyril.com上的博客文章之后,我最终遇到了 Python 实际运行的相同问题,但找不到它附带的任何基本模块。博客文章似乎也没有解决手头的问题。

玩了一会儿之后,在定义 PYTHONPATH 时,你真正需要做的就是添加模块本身的路径,所以修改这个(来自博客):

export PYTHONHOME=/data/data/com.googlecode.pythonforandroid/files/python
export PYTHONPATH=~/py:${PYTHONHOME}/lib/python2.6/lib-dynload
export LD_LIBRARY_PATH=${PYTHONHOME}/lib

对此(注意第二行):

export PYTHONHOME=/data/data/com.googlecode.pythonforandroid/files/python
export PYTHONPATH=~/py:${PYTHONHOME}/lib/python2.6/lib-dynload:${HOME}/sdcard/com.googlecode.pythonforandroid/extras/python
export LD_LIBRARY_PATH=${PYTHONHOME}/lib

PYTHONPATH 中缺少的只是模块本身的路径,因此 Python 不知道从哪里加载它们。添加这些模块的路径为我解决了这个问题。

希望这可以帮助。

于 2014-12-08T13:40:28.907 回答