Python下使用subprocess中文亂碼的解決方案


  1. # -*- coding: CP936 -*-
  2. import subprocess
  3. cmd="cmd.exe"
  4. begin=101
  5. end=110
  6. while begin<end:
  7. #reload(sys)
  8. #sys.setdefaultencoding('CP936')
  9. p=subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE,stdin=subprocess.PIPE,stderr=subprocess.PIPE)
  10. p.stdin.write("echo 你好."+str(begin)+"\n")
  11. p.stdin.close()
  12. p.wait()
  13. print"excution result:\n"
  14. pout=''.join(p.stdout.readlines())
  15. output=pout.decode('cp936').encode('utf-8')
  16. print"%s\n"% output
  17. begin=begin+1
 






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM