使用Windows系统cmd运行Python时中文乱码问题有效的解决方式

系统是Windows7.在cmd或者powershell上使用Python2/3运行含有中文的Python源文件,都有中文乱码问题。

目前找到的有效解决方法是先对中文按照指导的编码方式解码,然后按照指定的编码方式编码字符串,当然对于Python2要加上使用utf-8的注解,例如:

(该解决方案来自于http://www.runoob.com/python/python-chinese-encoding.html 的笔记)

#!/usr/bin/python
# -*- coding:utf-8 -*-
s = "你好,世界!"
print s.decode("utf-8").encode("gbk")  #先按照utf-8解码,再按照gbk编码

原因是windows 命令提示符的显示编码为 gbk 编码。

在命令提示符下使用 chcp 查询编码。

"活动代码页:936" 代表命令提示符的编码为 "gbk"

"活动代码页:65001" 代表命令提示符的编码为 "utf-8"

 

之前试图直接修改笔者的cmd活动代码页,但不论是通过可视化修改还是修改注册表,网上的资料都不对笔者的电脑有效(可视化没有对应的按钮,注册表找不到对应的字段)。而在cmd上直接使用chcp 65001跳到对应的活动窗口时运行Python文件还是乱码。

不知道有没有更好的合适笔者的方法,希望分享给笔者,非常感谢,因为先解码再编码的方式不太友好。

为了得到而努力

2019-03-28

转载请注明来处

 

转载于:https://www.cnblogs.com/malw/p/10616830.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值