Python下使用subprocess中文乱码的解决方案

来源:互联网 发布:微信h5软件 编辑:程序博客网 时间:2024/05/17 22:23

http://blog.sina.com.cn/s/blog_567002510101c516.html

http://www.cnblogs.com/bsmagic/p/4392928.html


1、window上使用shell显示中文

reload(sys)sys.setdefaultencoding('utf-8')
2、cybiwn pycharm 中显示中文
output = line.decode('cp936').encode('utf-8')        print "%s\n" % output

import subprocessimport syscmd = "cmd.exe"begin = 101end = 102while begin < end:    ##blow for windows shell chinese show##    #reload(sys)    #sys.setdefaultencoding('utf-8')    print "excution result start :\n"    child = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.PIPE)    print "ping -n 1 -w 100 192.168.1." + str(begin) + "\n"    child.stdin.write("ping -n 1 -w 100 192.168.1." + str(begin) + "\n")    child.stdin.close()    child.wait()    print "excution result end:\n"    begin += 1    #print child.stdout.readlines()    for line in child.stdout.readlines():        ##blow for pycharm and cygwin show chinese#        output = line.decode('cp936').encode('utf-8')        print "%s\n" % output


0 0
原创粉丝点击