我有一个程序,完全可以在Linux上运行但是 - 奇迹 - 不是Windows。 我已经修复了sys的一个错误,并获得了一个新错误:
"TypeError: bufsize must be an integer"
我很确定这是非常容易的,我忘了尝试任何提示?谢谢!
import subprocess
import sys
process = subprocess.Popen(sys.executable, [player["progname"]],
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
universal_newlines=True)
答案 0 :(得分:0)
您可能希望将sys.executable
和player["progname"]
都包含在list
中。
process = subprocess.Popen([sys.executable, player["progname"]],
...)
否则,您将player["progname"]
作为bufsize
参数传递给Popen构造函数(https://docs.python.org/3/library/subprocess.html#popen-constructor)
答案 1 :(得分:0)
Popen构造函数的第二个参数应该是一个整数,并且您正在传递[player["progname"]]