1

我正在尝试在 python 脚本中运行 Zenity,以显示一个变量。

nmaj = 10
cmd = ["zenity" "--question" "--text='Are you " + str(nmaj) + "years old ?'"]
subprocess.call(cmd, shell=True)

我可以在命令中输入一个字符串吗?如何?谢谢

4

2 回答 2

1

您可以尝试使用format并放置''外比""

nmaj = 10
cmd = 'zenity --question --text="Are you {} years old ?"'.format(nmaj)
subprocess.call(cmd, shell=True)
于 2014-04-04T12:29:54.360 回答
1

,你错过了命令行参数之间的逗号( ):

cmd = ["zenity", "--question", "--text='Are you " + str(nmaj) + "years old ?'"]

否则,字符串文字将连接成一个字符串(请参阅字符串文字连接):

>>> "zenity" "--question" "--text='Are you "
"zenity--question--text='Are you "
于 2014-04-04T12:33:25.473 回答