这个问题与python脚本调用中的其他python类似,但这些问题都不适合我。在
我有一个聊天脚本,它使用pythonxmpp发送聊天消息。语法如下:
python chat.py -c "recipient@example.com" -u "sender@example.com" -p "secret" -m "message"
脚本:
^{pr2}$如您所见,它需要4个参数。在
现在我有另一个python脚本在监听传感器。我试图让它发送聊天信息时,它检测到传感器读数,所以从内部听着.py我这样做:
...
import chat
...
chat.main('-c "chatto@server.com" -u "chatfrom@server.com" -p "password" -m "Yo Yo Yo Wassup"')
....
我也试过了subprocess.call但可能没有得到正确的语法。两个python脚本都在同一个目录中。所以对于你们这些想问具体问题的人,我该怎么称呼聊天室.py从内部听着.py在提供所需的四个参数时?在
parse_args()需要一个字符串列表。对于简单的参数,您可以在空格上使用
split()
,但是在您的例子中,您有一个内部空格的复杂参数,所以这行不通。在不要在字符串中包含引号。当它们被定义成一个内部参数时,它们将被发送到一个argv中。在
chat.main(['-c', 'chatto@server.com', '-u', 'chatfrom@server.com', '-p', 'password', '-m', 'Yo Yo Yo Wassup'])
查看更多信息:https://docs.python.org/2/library/argparse.html#beyond-sys-argv
相关问题 更多 >
编程相关推荐