通过 shell 传递参数到 python

Pass parameter through shell to python

我 运行 python 在我的 Android 终端中并且想要 运行 一个 .py 文件:

python /sdcard/myScript.py

问题是 python 在我的 Android 环境中间接调用 shell 在我的 /system/bin/ 路径中(通过终端模拟器直接访问它) ).

我的确切问题,标题如何告诉如何通过多个 Shell 脚本将参数传递给 Python?

我在 /System/bin/ 中直接调用的文件 "python" 仅包含如下重定向:

sh data/data/com.hipipal.qpyplus/files/bin/qpython-android5.sh

等等调用python二进制。

编辑:

我只是在每个shell之后添加</code>参数,Python通过这样调用:</p> <p><code>sh data/data/com.hipipal.qpyplus/files/bin/qpython-android5.sh

所以可以调用

python /sdcard/myScript.py arg1

并在 myScript.py 中像往常一样使用 sys.argv

获取

谢谢

我没有Android编程经验,所以只能给个大概的建议:

当然,天真的解决方案是显式地将参数从一个脚本传递到另一个脚本,但我猜你不能或不想修改中间的脚本,否则你就不会问了。

另一种我有时使用的方法是在最外层的脚本中定义一个环境变量,将我所有的参数都填入其中,然后从Python中解析它。

最后,你可以从最外面的脚本写一个 "configuration file",然后从你的 Python 程序中读取它。如果您使用 Python 语法创建此文件,您甚至可以免于解析代码。

我有类似的问题。从 Python 控制台运行我的脚本 /storage/emulator/0/Download/.last_tmp.py -s && exit 我得到 "Permission denied"。无论我是调用 last_tmp 还是编辑脚本本身。 有没有办法在编辑器中传递参数?