python2输出中文乱码问题

python2输出中文乱码问题

1、在源码文件第一行添加 #-*-coding:utf-8-*- 或  #encoding=utf-8 或  #encoding=UTF-8

注意:一定要在第一行!

2、在字符串前加 ‘ u ’

例: spring=u"这是一个测试字符串"

3、若上述2种方式仍然不能保证能输出正常输出中文,就需要做编码解码设置

即 encode: 编码(真实字符与二进制串的对应关系,真实字符→二进制串)

decode: 解码(二进制串与真实字符的对应关系,二进制串→真实字符)

① 打印字符串时,字符串本身的编码,与输出终端中所用编码不匹配

例:本身是UTF-8类型的字符串,但是却将其输出到Windows的cmd中,而cmd中默认是GBK编码的,导致两者不匹配

解决办法:

可以把UTF-8的字符,解码为对应的Unicode,(也可以进一步的,把Unicode字符串,编码为GBK)。然后再输出到

GBK的cmd中,就可以正常显示,不是乱码了:

② 打印含某些特殊字符的Unicode类型字符串,但是输出终端中字符编码集中不包含这些特殊字符

例:把Unicode字符串,打印到Windows的cmd中,结果出错:

解决办法:

实例:

1.  str 转换为 unicode

2. unicode 转换为str

参考文档:

python中的编码与解码: https://www.cnblogs.com/shine-lee/p/4504559.html

Python: 在Unicode和普通字符串之间转换: https://blog.csdn.net/u012448083/article/details/51918681

Python 2.x中常见字符编码和解码方面的错误及其解决办法:https://blog.csdn.net/gmj4850/article/details/17115285

原文地址:https://www.cnblogs.com/xinxinyo/p/10394856.html

时间: 2024-10-14 17:16:00

python2输出中文乱码问题的相关文章

Eclipse+pydev2.2+python2.7 中文乱码问题

Eclipse+pydev2.2+python2.7 中文乱码问题 Eclipse的设置 window->preferences->general->editors->text editors->spelling->encoding->UTF-8 window->preferences->workspace->text file encoding->UTF-8 打开eclipse安装目录->eclipse.ini,末行加上”-Dfil

python2 输出中文

第一次随笔,也不知道怎么写,慢慢来吧,错就错了,写的难看或者不好也就这样吧. python2 输出中文: 给开头加 -*- coding=utf-8 -*- ,然后再给中文后面加 '.decode('utf-8').encode('gbk')'    (不要单引号的.) 具体例子:l=raw_input('请输入三角型的三边:'.decode('utf-8').encode('gbk')) 先这样吧,虽然有点麻烦,但也是找到解了,以后要是有更好的方法,会在这里更新的.

.Net Core 控制台输出中文乱码

Net Core 控制台输出中文乱码的解决方法: public static void Main(string[] args)        {            Console.OutputEncoding = System.Text.Encoding.UTF8;//第一种方式:指定编码            //Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);//第二种方式                    

resin后台输出中文乱码的解决办法!

最近从tomcat移植到resin,发现这东西不错啊! 只是后台输出时有时候中文会乱码. 现在找到resin后台输出中文乱码的解决办法: 编辑conf/resin.con文件: <!--javac compiler="internal" args="-source 1.5"/--> 修改成这样: <javac compiler="javac" args="-encoding utf-8"/> 重启服务器

VS2010中wmain入口函数中使用wprintf输出中文乱码问题

生活中的单例 中国(China),位于东亚,是一个以华夏文明为主体.中华文化为基础,以汉族为主要民族的统一多民族国家,通用汉语.中国疆域内的各个民族统称为中华民族,龙是中华民族的象征.古老的中国凭借自身的发展依旧美丽的屹立于东方民族之林,闪耀着她动人的光彩,世界上只有一个中国,任何部分都是祖国不可分割的一部分,今天我们的设计模式就从伟大的祖国开始说起---单例模式. 详解单例模式 单例模式是什么?跟我们的祖国有着怎样的关系呢?首先我们来看一下单例,从"单例"字面意思上理解为-一个类只有

Java应用程序中System.out.println输出中文乱码

Java应用程序中System.out.println输出中文乱码 2013-12-10 21:27:08cnblogs.com-bluepoint2009-点击数:3631 其实,解决办法比较简单,即:编译时指定编码为UTF-8,如: 1 javac -encoding utf-8 HelloJava.java 这样,再运行时就不会出现乱码. 一.中文问题的来源 计算机最初的操作系统支持的编码是单字节的字符编码,于是,在计算机中一切处理程序最初都是以单字节编码的英文为准进行处理.随着计算机的发

在Servlet中出现一个输出中文乱码的问题(已经解)。

在Servlet中出现一个输出中文乱码的问题,已经解. @Override public void doPost(HttpServletRequest reqeust, HttpServletResponse response) throws ServletException, IOException { //PrintWriter out = response.getWriter();在还没有给response指定编码格式时就获取了他的输出流,所以一直乱码 reqeust.setCharact

编码(ACSII unicod UTF-8)、QT输出中文乱码深入分析

总结: 1. qt输出中文乱码原因分析 qt的编程环境默认是utf-8编码格式(关于编码见下文知识要点一): cout << "中文" << endl; 程序运行,程序并不认识ANSI,UTF-8以及任何其他编码.系统只知道处理你给它的字符的二进制表示. 关于  "中""文" 的3种编码二进制内容: ANSI(GBK): 0xd6d0  0xcec4 UTF-8: 0xe4b8ad 0xe69687 Unicode: 0x

解决IntelliJ IDEA控制台输出中文乱码问题

一.问题情况: IntelliJ IDEA 控制台输出中文乱码部分如图所示: 找到intellij idea的file---settings---Editor---FileEncodings的GlobalEncoding和ProjectEncoding和Default encoding for properties都配置成UTF-8 在部署Tomcat的VM options项中添加:-Dfile.encoding=UTF-8 重启Intellij idea即可解决乱码问题 原文地址:https: