Python:从可变长度列表插入命令行参数

Python:从可变长度列表插入命令行参数,python,command-line,vlc,popen,Python,Command Line,Vlc,Popen,我正在和VLC连接一些视频。不过,我加入的视频数量各不相同。我已经能够让它在我的输出文件列表中使用恒定数量的变量: p = sub.Popen(['C:\\Program Files\\VideoLAN\\vlc\\vlc.exe', outputFileList[0], outputFileList[1], outputFileList[2], 'vlc://quit', '--sou

我正在和VLC连接一些视频。不过,我加入的视频数量各不相同。我已经能够让它在我的输出文件列表中使用恒定数量的变量:

p = sub.Popen(['C:\\Program Files\\VideoLAN\\vlc\\vlc.exe',
           outputFileList[0],
           outputFileList[1],
           outputFileList[2],
           'vlc://quit',
           '--sout-keep',
           '--sout=#gather:standard{access=file,dst=D:\\movies\\' + fileName + '.mov}',
           '--sout-keep'],
           stdout=sub.PIPE,
           stderr=sub.PIPE)
然而,我很难弄清楚如何提供不同数量的参数。有时我想合并2个视频,有时3个,等等。我不能简单地循环并在命令行中添加项目(至少我试过了)。我不能只提供一个列表来代替单个项目,因为它正在为每个项目寻找一个字符串路径


任何帮助都将不胜感激。

请将您的列表连接起来:

p = sub.Popen(['C:\\Program Files\\VideoLAN\\vlc\\vlc.exe'] + 
              outputFileList +
              ['vlc://quit',
               '--sout-keep',
               '--sout=#gather:standard{access=file,dst=D:\\movies\\' + fileName + '.mov}',
               '--sout-keep'],
              stdout=sub.PIPE,
              stderr=sub.PIPE)

只需连接您的列表:

p = sub.Popen(['C:\\Program Files\\VideoLAN\\vlc\\vlc.exe'] + 
              outputFileList +
              ['vlc://quit',
               '--sout-keep',
               '--sout=#gather:standard{access=file,dst=D:\\movies\\' + fileName + '.mov}',
               '--sout-keep'],
              stdout=sub.PIPE,
              stderr=sub.PIPE)

哇,一开始我甚至都没把它当成一张单子。嗯。非常感谢。哇,一开始我甚至都没把它当成一张单子。嗯。非常感谢。