根据subprocess.Popen的Python 3文档,类构造函数采用一个可选参数text
(应该控制是否以文本模式打开文件对象stdin,stdout和stderr)。
但是,当我尝试在构造text=true
对象时设置Popen
时,会出现错误消息
Failed: TypeError: __init__() got an unexpected keyword argument 'text'
,当我查看源代码时(我使用的是Python 3.6.4),构造函数没有参数text
。这里发生了什么?为什么文档中说构造函数没有我所拥有的text
版本时,构造函数会使用可选参数subprocess.py
?
答案 0 :(得分:8)
我觉得text参数是在3.7中添加的,而不是在3.6中添加的。
文档的相关部分:
在3.7版中进行了更改:添加了text参数,作为Universal_newlines的更易理解的别名。添加了capture_output参数。