Python 快把我逼疯了;我总是很难在 PATH 中使用变量。我的版本是Python 2.4.3
>>> import os
>>> a = "httpd"
>>> cmd = '/etc/init.d/+a restart'
>>> print cmd
/etc/init.d/+a restart
>>>
如何放入/etc/init.d/httpd
变量cmd
以便我可以使用os.system(cmd)
?
对于 python v > 2.7
cmd = '/etc/init.d/{} restart'.format(a)
或者
cmd = '/etc/init.d/'+a+' restart'
但是您可能应该考虑使用subprocess
.
你需要类似的东西:
cmd = '/etc/init.d/%s restart' % a
如果您需要进行多次替换,您可以执行以下操作:
cmd = '/etc/init.d/%s %s' % ( 'httpd', 'restart' )
在这种形式中,'%s'
是一个占位符。每个'%s'
都被运算符tuple
右侧对应项中的一个项目替换%
(我想这是字符串插值运算符)。可以在参考的字符串格式部分找到更多详细信息
从 python2.6 开始,有一种使用该方法格式化字符串的新.format
方法,但我想这对你没有多大帮助。