从python发送任意数量的输入到.exe

B R*_*era 2 python executable


p = subprocess.Popen(args = "myprog.exe" + " " +
                     str(input1) + " " +
                     str(input2) + " " +
                     str(input3) + " " +
                     strpoints, stdout = subprocess.PIPE)

在上面的代码中,input1,input2和input3都是转换为字符串的整数.变量"strpoints"是任意长度的字符串列表.input1告诉myprog strpoints的长度.当然,当我尝试运行上面的代码时,我收到以下错误消息:

TypeError:无法隐式地将'list'对象转换为str

如何将strpoints的所有元素传递给myprog.exe?我注定要做str(strpoints)然后让myprog.exe解析这个逗号,撇号等?例如,

`>>> x = ['a','b']

`>>> str(x)

"['a','b']"

或者我应该提前创建一个巨大的字符串?例如,

'>>> x = ['a','b']

'>>> stringify(x)

'ab'

stringify会是这样的


def stringify(strlist):
    rlist = ""
    for i in strlist:
        rlist = rlist + i + " "
    return rlist