我是python编程的新手,需要您的帮助。 我正在使用exec(open(“ ./ script / script.py的路径” .read())运行python脚本。 如果我尝试传递一个参数,那么我总是会收到错误消息,指出该文件不存在,解释器以某种方式认为传递的字符串是显然不正确的文件名。
>>> exec(open("./path to script/script.py" "hello").read())
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IOError: [Errno 2] No such file or directory: './path to script/script.pyhello'
任何人都有解决此问题的技巧。
感谢您的帮助。
答案 0 :(得分:0)
由于您也想打开文件并传递参数,因此我建议您使用os.system()
模块中的os
来实现此目的,因为exec()
不提供给您具有这种功能,因为您只能向其中传递一个字符串。
示例:
Script.py:
arg = input()
print(arg)
调用上述脚本:
import os
os.system('python3 home/pathtoscript/script.py Hello')
这将在终端上为您打印所需的输出。但这还取决于您要进一步实现什么。
输出:
Hello
我还建议使用argparse
模块来处理参数,因为如果您尝试使用多个参数,它会提供强大的支持。 Here是同一文件的官方文档。
祝你好运,编码愉快。