Cla*_*diu 6 python shell formatting command-line command-line-arguments
我有一个参数列表,例如["hello", "bobbity bob", "bye"].我将如何格式化这些以便将它们适当地传递给shell?
错了:
>>> " ".join(args)
hello bobbity bob bye
Run Code Online (Sandbox Code Playgroud)
正确:
>>> magic(args)
hello "bobbity bob" bye
Run Code Online (Sandbox Code Playgroud)
unu*_*tbu 14
您可以使用未记录但长期稳定的(至少从2004年10月开始)subprocess.list2cmdline:
In [26]: import subprocess
In [34]: args=["hello", "bobbity bob", "bye"]
In [36]: subprocess.list2cmdline(args)
Out[36]: 'hello "bobbity bob" bye'
Run Code Online (Sandbox Code Playgroud)