码迷,mamicode.com
首页 > 编程语言 > 详细

python 利用subprocess调用cmd命令程序,并正确输出控制台的输出中文

时间:2019-02-01 17:14:11      阅读:904      评论:0      收藏:0      [点我收藏+]

标签:直接   shel   控制   标准   编码   tput   gbk   解决方法   进程   

平台Python3.7

1.利用控制台运行程序后在控制台会输出中文提示,但是用python调用subprocess.run函数后返回的输出是乱码,于是,解决方法是用subprocess.check_output(),该函数返回子进程向标准输出的输出结果

程序如下:

f=subprocess.check_out([XX,XX, XX],shell=True,)
t=f.decode(encoding=gbk)
print(t)

subprocess.check_output()输出的是二进制码,直接解码成原编码格式就可以了(这里的原编码格式是gbk)

 

至于为什么这么转码,详见另一篇关于python2和python3的encode和decode函数

python 利用subprocess调用cmd命令程序,并正确输出控制台的输出中文

标签:直接   shel   控制   标准   编码   tput   gbk   解决方法   进程   

原文地址:https://www.cnblogs.com/mghhzAnne/p/10346130.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!