为了账号安全,请及时绑定邮箱和手机立即绑定

python subprocess decode报错?

python subprocess decode报错?

一只斗牛犬 2019-08-21 12:24:43
python小白,在看廖雪峰pythonsubprocess教程的时候碰到下面一个执行nslookup命令的报错操作系统:win10python版本:3.7importsubprocessprint('$nslookup')p=subprocess.Popen(['nslookup'],stdin=subprocess.PIPE,stdout=subprocess.PIPE,stderr=subprocess.PIPE)output,err=p.communicate(b'setq=mx\npython.org\nexit\n')print(output.decode('utf-8'))print('Exitcode:',p.returncode)报错信息:$nslookupTraceback(mostrecentcalllast):File"E:/py/learning-python/Process_Thread/multi_process/sub_process.py",line14,inprint(output.decode('utf-8'))UnicodeDecodeError:'utf-8'codeccan'tdecodebyte0xc8inposition2:invalidcontinuationbyteProcessfinishedwithexitcode1请问造成这个错误的原因是什么?如何解决谢谢。
查看完整描述

2 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

decode默认使用strict模式,第二个参数改成ignore的话可正常解码,具体原因不知道是什么.
print(output.decode('utf-8','ignore'))
                            
查看完整回答
反对 回复 2019-08-21
  • 2 回答
  • 0 关注
  • 203 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信