Ideone支持Python命令行参数吗?
我正在尝试远程指导办公室里的几个人学习Python,最简单的方法似乎是给他们展示一些简单的Python示例...
http://wiki.python.org/moin/SimplePrograms
... 在像ideone.com这样的沙盒环境中运行。
一切都很顺利,直到第八个示例(“命令行参数,异常处理”)。
我发现没有办法给ideone的解释器发送参数,当我试图通过标准输入(stdin)传值时,它们似乎被忽略了。有没有人知道该怎么做?ideone的常见问题解答里没有提到关于参数的内容。
如果不行,有没有其他的在线Python解释器可以接受标准输入和参数,可能可以解决这个问题?
提前谢谢大家。你们真棒。
4 个回答
1
你可以在Ideone的Bash模式下运行Python,并且可以传递参数。因为它不允许你保存文件,所以你可以使用Bash的heredoc功能来提供Python脚本:
示例:
python - 1 2 3 <<EOF
import sys
print 'Args: ', sys.argv[1:]
EOF
输出:
Args: ['1', '2', '3']
这里的-
参数告诉Python从标准输入读取脚本。所有在<<EOF
和EOF
之间的内容都会作为标准输入提供给Python。需要注意的是,这意味着你不能在脚本中使用raw_input
和类似的函数来读取标准输入。
2
如果你想使用ideone,你可以通过扩展 sys.argv
变量来模拟参数。以你的例子为例:
sys.argv.extend(['3', '4', '5'])
这段代码要放在 import sys
之后。
这是ideone的链接: http://ideone.com/8pH8A
3
还有一个选择是 PythonAnywhere。这里有一个 即时演示,你可以登录后获得存放脚本的空间,还有各种命令行工具可以使用。
登录后,你可以启动一个bash命令行,然后可以通过命令行运行Python脚本,并且可以添加你想要的任何参数。