Python os.system works inline but not as a variable
此函数在email变量中向收件人发送google hangouts消息。
它适用于以下情况,即电子邮件不带引号。
1 2 3 4 | import os EMAIL='[email protected]' os.system('sudo echo"jjj" | sendxmpp -v -t [email protected]') #send hangouts message |
但是,当我在它的位置插入变量时,它不会发送。没有错误消息,调试似乎发送正确,但我认为它发送到"[email protected]"而不是[email protected]。所以它可能包括了引号,
1 | os.system('sudo echo"jjj" | sendxmpp -v -t EMAIL') #send hangouts message |
python不会用这样的字符串来解释变量。
使用串联:
1 | os.system('sudo echo"jjj" | sendxmpp -v -t ' + EMAIL) |
或字符串格式:
1 | os.system('sudo echo"jjj" | sendxmpp -v -t %s' % EMAIL) |
为了向前兼容和可读性,我建议使用
请参阅此线程,以了解为什么它比