Python 将变量添加到字符串中

Python 将变量添加到字符串中,python,Python,我添加了这行代码: tweet_string = 'Starting activity for insta' os.system("python3 tweet.py tweet_string") 正如您所见,tweet脚本使用第一个参数作为tweet上下文。不幸的是,我不知道如何正确使用变量。。。你能帮我吗 总的来说 ('python3 tweet.py "' + tweet_string + '"') 如果您使用的是python 3.6 f('python3 tweet.py "{twee

我添加了这行代码:

tweet_string = 'Starting activity for insta'
os.system("python3 tweet.py tweet_string")
正如您所见,tweet脚本使用第一个参数作为tweet上下文。不幸的是,我不知道如何正确使用变量。。。你能帮我吗

总的来说

('python3 tweet.py "' + tweet_string + '"')
如果您使用的是python 3.6

f('python3 tweet.py "{tweet_string}"')

当然,不要在文本字符串中传递变量名

仅仅加上引号并不会因为空格而减少它。你必须用引号来保护自己

应该是:

os.system('python3 tweet.py "{}"'.format(tweet_string))
(更好,但如果
tweet\u string
中有引用,您将再次遇到问题)

无论如何:不要使用
os.system
它已被弃用。这样更好,可以自动处理报价:

import subprocess
subprocess.check_call(["python3","tweet.py",tweet_string])
(Python3.5添加了一个统一的方法,该方法可以检查返回代码是否正确,是否在变量中重定向输出,如果不需要与以前的版本兼容,建议使用这种方法来运行子流程)


当然,在python模块内运行python子进程时,一定要问自己这样一个问题:导入模块并调用函数不是更容易吗?

@Jean-Françoisfare在
python3 tweet.py
@birryrree之后需要一个空格。它可能不是这样工作的,字符串需要引用。并且os.system已被弃用。我不推荐这个。试着在推特上发任何有引语的东西…