繁体   English   中英

Python子流程模块:如何将逗号分隔的输入传递给Popen?

[英]Python subprocess module: How can I pass comma separated input into Popen?

我有一个字符串列表和一个要与Popen一起运行的命令。 该命令将字符串作为输入参数。

如何轻松添加整个列表...

list=['asdf','qwer','zxcv',...]

...作为逗号分隔的输入,如下所示:

Popen(['cmd','asdf','qwer','zxcv',...])

我将无法执行此操作,因为它不会将列表隐式转换为str:

Popen(['cmd',list])

也不是,因为它根本不允许在字符串中包含空格:

Popen(['cmd',' '.join(list)])

还有其他选择吗?

我不想使用'shell = True'选项。

您可以执行以下操作,以从两个(或多个)单独的列表中创建一个列表。

['cmd'] + list

这会为您创建一个包含这两个内容的新列表。 如您所提到的,语法的外观和功能完全符合您的预期,即将两个列表加在一起。

注意:我也要警告您不要使用list作为变量名。 因为这意味着您要隐藏内置list类型。 以后可能会导致无法预料的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM