Python中文字符输出乱码的问题

我有一个文本

 你好,中国

然后使用Python发现是乱码

f = open('file.txt')
print(f.readlines())

结果如下:

['\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe4\xb8\xad\xe5\x9b\xbd\n']

怎么让程序自动打印出中文结果?

5个回答

import urllib
然后 urllib.quote('zhongwen')

ludengji
ludengji 回复AlexanderYau: quote方法里把你readlines的东西丢进去。。。
3 年多之前 回复
u012440391
AlexanderYau 具体怎么使用?
3 年多之前 回复

这个乱码的原因,无外乎,文本的编码,读取打开的编码,控制台的输出编码,不一致,造成的,建议如下:
保证文本的编码为UTF-8,然后:
1,设置控制台编码为UTF-8
2, open('file.txt',encoding='utf-8')

你需要你的控制台支持中文,这样,就可以直接print来打印

因为readlins()函数返回的是一个list,要想显示,就要指定list的角标,print里改成f.readlines()[0]应该就好了

用 print f.readlines()[0] 最方便

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
python 之 解决输出中文字符乱码
Python在执行过程中,常常出现不能读取中文路径名,表现为读取的路径是空或者直接报错(WindowsError: [Error 2]),也有时候出现不能正常输出中文字符串,编译器报错为(KeyError),这是编码出现了问题。这个时候在字符串后面添加转码操作即可。 详见源码示例如下 【中文字符串】
python 中文字符乱码的问题
1.全局声明编码的格式 import sys reload(sys) sys.setdefaultencoding('utf-8') 在func中将字符串转为unicode,再转为中文编码 如str.decode('utf-8').encode('gbk') 2.在测试过程中,遇到一个问题,即使声明了全局的编码格式,但是在读写txt文件的时候,中文的标点会输出乱码,这个时候
Vs输出中文字符乱码——??????
win10更新后,控制台程序就这个样子了....... 这是由于win10系统更新,带来的控制台编码的改变,只要改回旧版控制台即可 改完之后
Python的中文字符乱码
打算用Python解析一下网络日志文件。 必然地遇上了中文乱码的问题。 小弟以前学Java,用Python解决中文乱码的问题真不知道如何入手。 在Java下面调试通过的代码,放在Python环境下就给我闹脾气了。   费我九牛二虎之力,终于在一位Oschina大大的帮助下问题解决了。 Python编码的思路主要是: 1.字符串 2.Unicode 3.目标编码集 其中(CP93...
php中输出中文字符乱码
问题如下:rn$load_list 是一个二维数组,将其中的user_name值取出前两个字符,后面用星号代替,但是遇到中文字符就出现乱码,设置header()函数,也没用,求解决办法,谢谢!rnforeach($load_list as $k=>&$v)rn $temp=&$v['user_name'];rn rn for($i=0,$len=strlen($temp);$i<$len;$i++)rn if($i>1)rn $temp[$i]='*';rn rn rn rnrn截图如下:[img=https://img-bbs.csdn.net/upload/201311/11/1384149085_856601.png][/img]
关于python中中文字符切割乱码的问题
利用find()函数找到要切割字的位置(index),如果切割字是中文,并不能直接(index + 1),而是要(index + len(带切割字符)) eg . s = "商务人生如影随形 ThinkPadT440亚马逊促—万维家电网" index = s.find("—") a = s[index + len("—") :] 如果直接a = s[index + 1:],输出a
关于中文字符乱码(?)的问题
用java写了个Web服务,在好几个服务器已经部署成功,客户端调用也正常;rnrn今天碰到一台服务器,部署后,客户端调用后返回信息里的中文字符都变成了“?”,再到服务器上看了下log,发现里面记录的中文信息也都变成了?,rnrn感觉像是服务器的问题(因为安装前服务器默认的语言是英文的,后被我改成中文),但不知道怎么设置?rnrn谢谢了
中文字符显示乱码的问题
apache2.0.48+resin2.1.9平台下,jsp文件中文显示的都是乱码问题rn如何解决???
Python学习笔记(4)-中文字符输出
       字符串中存在一个编码问题。        因为计算机只能处理数字,如果要处理文本,就必须要把文本转换为数字才能处理。最早的计算机在设计时采用8个比特作为一个字节,所以一个字节能表示的最大整数为255。0-255被用来表示大小写英文字母、数字和一些符号,这个编码表成为ASCII编码。        如果要表示中文,显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲...
Code::Blocks 中文字符输出乱码的问题求解?
Win 7平台下,创建的Code::Blocks + Objective-C编译环境,遇到的字符编码问题. Code::Blocks 中文字符输出乱码,我把整个设置都录成视频,大家可以通过下面这个百度网盘的链接(ttp://pan.baidu.com/s/1c2phPzq 百度贴吧里的问题:),下载观看!如果您知道,问题出在哪里,欢迎给我点评!我的邮箱是cweinet@qq.com
中文字符存入list中输出为乱码
先看代码: item = [['2015',u'中国'],['2013','nian份']] print item print item[0][1] 输出结果: 在此处有相关讨论 解决办法: python2中,list若包含中文,整体输出时是以十六进制输出的; 链接中的讨论提供的方法试过,没成功。看来python2中只能以for来单独输出了。 当然了python3应该是
关于中文字符输出的问题
有一列字符串,如String s=“说sg收a”有7个字节,中文占二个字节。rn将该列字符按每行有相应的字符输出,如果某一行的最后的一个字符的中文被拆开,则将其放在下一行输出。rn如:String s="收sds到sfq都是sk是";按每行6个字符输出的话:则结果为:rn第一行为:收sdsrn第二行为:到sfqrn第三行为:都是skrn第四行为:是rnrn
中文字符输出问题
我的程序如下:rnrnrnrn<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*,java.io.*"%>rnrnrn以下是从Ms sql server数据库读取的数据: rn rn id 书名 出版社 价格rn<%! String trans(String chi)rnrn String result = null;rn byte temp [];rn tryrn rn temp=chi.getBytes("iso-8859-1");rn result = new String(temp);rn rn catch(UnsupportedEncodingException e)rn rn System.out.println (e.toString());rn rn return result;rnrn%>rn<%rnrn Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();rn Connection con=java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=jspdev","bn","bn");rn Statement stmt=con.createStatement();rn ResultSet rst=stmt.executeQuery("select * from book;");rn while(rst.next())rn rn out.println(" ");rn out.println(" "+trans(rst.getString("bookId"))+"");rn out.println(" "+trans(rst.getString("bookName"))+"");rn out.println(" "+trans(rst.getString("publisher"))+"");rn out.println(" "+rst.getFloat("price")+"");rn out.println("");rn rn //关闭连接、释放资源rn rst.close();rn stmt.close();rn con.close();rn %> rnrnrnrn rnrn结果在输出时在“书名”和“出版社”的下边是很多问号。rn我用的是j2sdk1.4+tomcat5.0+sqlserver2000+ie6.0rn请高手指教rnrn rn
python输出乱码
今天想要向文档里面打印一些中文,结果打印出来全是其他编码 后来一看,我是直接打印的tuple,就是(x,y)这种形式的 这样是不行的,应该分别取[0]和[1]分开来打才能变成中文。 python的编码做得实在是===
Python 输出乱码,求解:)
import MySQLdbn con= MySQLdb.connect(host='127.0.0.1',user='root',passwd='123',db='companyname',charset='utf8')n cursor =con.cursor()n sql ="select * from name"n a = cursor.execute(sql)n row=cursor.fetchone()n print rown cursor.close()n con.close()nnn 数据库是utf-8的n 输出是这个 求解 (1L, u'\u5357\u4eac\u5174\u6d9b\u516c')nn
python中文输出乱码
我在学习python,但是遇到了点小问题,先看看结果是这样的[img=https://img-bbs.csdn.net/upload/201608/02/1470130616_406458.png][/img]rn第一次是全部显示文件,没有错;第二次是一个一个显示,出现乱码。rn代码是这样的rn[code=python]#_*_coding:utf-8_*_rn'''rnCreated on Aug 1, 2016rnrn@author: zhourn'''rnfiles = open('hello.txt')rncoun = files.readline()rnprint counrnfor co in coun:rn print co,[/code]rn这是什么问题?decode()函数和encode()函数都用过,但是不能解决问题。
Python — 文字输出乱码
1. Python中列表或字典输出乱码的解决方法 问题: Python中的列表(list)或字典包含中文字符串,直接使用print会出现以下的结果: #打印字典 dict = {'name': '张三'} print dict &amp;gt;&amp;gt;&amp;gt;{'name': '\xe5\xbc\xa0\xe4\xb8\x89'} #打印列表 list = [{'name': '张三'}] pr...
中文字符输出
java中一个字符占两个字节,中文占两个字节,String str="abgs你好sdf",调用str.getBytes(),转换为字节数组:为什么rn[code=Java][/code]rnif(str.getBytes().length==2)rn rnrn System.out.println(str);//可以输出中文呢,字符和中文都是占俩个字节啊?字符存的是AScii,那中文存的是什么?rn rn
oracle连接中文字符乱码的问题
ORACLE的字符串连接运算符||,连接中文和字母时乱码,比如'测试'||'test',这样就乱码,全是中文没有问题,这是怎么回事?要设置什么吗
Tomcat下,中文字符显示乱码的问题。
我的Tomcat已经配置好了,但是打开自己做的jsp页面以后,所有的中文都显示“?”。怎么解决?rn我已经在jsp页面定义了字符集。rnrn<%@ page contentType="text/html; charset=gb2312" %>rn rnrn我用的是Tomcat4.1.7+Win 2k
python logging输入文件中文字符乱码
UnicodeEncodeError: ‘gbk’ codec can’t encode character ‘\u30fb’ in position Python中将日志写入到文件中的乱码的问题,在配置logging的时候除了基本的配置之外还需要配置文件的编码方式: logging.FileHandler(filename='translator.log', encoding='utf-8'...
【python】pycharm中文字符的问题
变量中含有中文字符或者print中含有中文字符时会报错变量:str = "你好";或print:print "你好";控制台显示为:G:\python\python.exe C:/Users/llz/PycharmProjects/HelloWord/New.py File "C:/Users/llz/PycharmProjects/HelloWord/New.py", line 5 Synta
python中的中文字符问题
使用python 2.6时发现脚本中有中文且处理中文时,有编码解码的问题,用以下方法解决: 1、python脚本首行添加 #-*- coding:utf-8 -*- 若不添加,脚本中的中文字符一律识别不了(包括注释中有中文都不行) 2、编写了个小爬虫,爬到的html文件中若有中文字符,需要对获得的html进行解码: html = response.read().dec
OS NSDictionary 输出中文字符”乱码”(Unicode编码)问题?
错误原因: 在调试服务端返回 JSON 结果的时候经常遇到,可以将输出的字符串重新编码,可以直接使用 Method swizzing替换原函数。添加分类文件NSDictionary+Unicode.m。 - (NSString*)my_description { NSString *desc = [self my_description]; desc = [NSString
解决 iOS NSDictionary 输出中文字符”乱码”(Unicode编码)问题
简单定义一个字典,输出结果:NSDictionary *dic = @{ @"我是中文字符": @"223333", @"aaa": @{ @"aaa": @"啦啦啦" }
jboss as 7 中文字符乱码
jsp页面中文字符乱码处理: 在提交的信息中包含中文时的通常需要处理乱码问题,tomcat与jboss类服务器默认的编码方式都是iso-8859-1,所以如果遇到乱码问题可以尝试下面方法: 1.从请求获取的字符串:txt可以做如下处理:new String (txt.getBytes(&quot;iso-8859-1&quot;),&quot;UTF-8&quot;),这样的方式可以处理一部分问题 2.增加uft8过滤器,强制将请...
struts2解决中文字符乱码
1.创建过滤器类: import java.io.IOException; import javax.servlet.*; public class SetCharacterEncodingFilter implements Filter {     private FilterConfig filterConfig;        //Handle the pass
mysql存储中文字符乱码
在使用原生的JDBC的同学不知道有没有遇到过类似的问题mysql中的中文乱码的问题,首先表现就是我们存储的时候参数明明使用的是中文,但是Java代码执行完成后数据库中变成了  “???” 也就是中文乱码。遇到这个别着急,这里有几种方式我们排除: 1.先确定数据库新建表的时候采用的存储引擎是支持中文的:就是在建表的时候在后面跟上:engine=InnoDB default character
关于中文字符乱码的小九九
request.setCharacterEncoding(&quot;UTF-8&quot;); 是设置从request中取得的值,或者是从数据库中取得的值设置为中文字符集utf-8。当然在jsp页面上也要声明utf-8   response.setContentType(&quot;text/html;charset=utf-8&quot;); 是设置当前页面的中文编码。...
php获取中文字符乱码
网页是GBK的,但要获取数据库里的中文字符是UTF-8的,请问转换的代码应当怎么写!rnrnrn$z=mysql_query("select * from ttt_goods where site_id=1 ORDER BY id DESC LIMIT 0, 4");rnwhile ($zow=mysql_fetch_row($z))rn[color=#FF0000]$zow[3];[/color]rn$new_tuan_threadlist[] = $zow;rnrnrnrn其中$zow[3];是UTF-8的中文字符,去显示到GBK的网页都是乱码,网页只能是GBK的,请问怎么在PHP里把$zow[3]转过来,rn知道的大哥帮忙下,小弟不怎么懂PHP,直接给代码谢谢了rn
MySql INTO OUTFILE 中文字符 乱码
各位高手,我用rnselect * from mytable into outfile '/tmp/dbinfo.txt';rnrn后得到的中文字符乱码。rn需要怎么设置解决乱码问题?rnrn另外两个问题:rn我在mysql客户端中直接执行 select * from mytable;得到的中文字符时正常的;rn在代码中执行select * from mytable 返回结果集,再自己写文件,得到的中文字符也是正常的。rn请问这是为什么?rnrn谢谢各位~
sql2005附加数据库 中文字符乱码
原数据库是sql2000,现将该库中的.mdf和.log通过附加数据库的方法加入到sql2005中,发现中文数据项均为乱码显示,求解决方法,谢谢大家。rnrn补充描述:rn已将原来sql2000中含中文的数据列修改为nchar类型,并将该数据列的排序规则修改为数据库的默认设置(但是想修改表的时候,总会弹出一个“可能发生了架构损坏”的对话框)。数据库的排序规则也已改为Chinese-PRC-CS-AS
中文字符乱码:UTF8、GB2312
最近遇到两个中文字符乱码的问题: 1、使用sourceinsight 查看代码时,中文字符乱码 2、使用xssh远程登录Ubuntu系统时,中文目录乱码 首先说下字符集: 最常见的英文字符集是ASCii 最常见的中文字符集是GB2312(新版本叫GB18030)、UTF8,还有GBK 然后说下软件和系统使用的默认字符集: sourceinsight 软件默认支持GB2
解决: HttpPost 中文字符乱码
网 网上有 有两种post方式: 第一:原生的post方式 例如: HttpURLConnection connection = null; try { // 创建连接 URL url = new URL(URL); connection = (HttpURLConnection...
MSDE中文字符乱码?
MSDE中文字符乱码,请问如何解决?rnrn系统环境:MSDE 1.0,Windows 98/2000
@Value读取配置文件,中文字符乱码
如题。 解决方案: 在applicationContext.xml中加入     在要使用@Value的类名上方声明 @PropertySource(value = "classpath:a.properties") @Getter 使用时: @Value("${worker}")  private String workers; 不再乱码
QT 中文字符乱码
QString –> QByteArray 后字节码与window下的不对。下面的中文字符“中国人民亿”,data是我正常后的GBK字节,value是直接使用 QString ::totoUtf8(),QString ::toLocal8Bit()之类的与期望不符的字节码。首先QString 转换成QByteArray 有三个成员函数QByteArray QString::toLatin1()
为什么中文字符是乱码?
其中strSend包含中文字符,但是发送上去的时候发送的内容中的中文就变成乱码了,该怎么解决呢?rnHttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(strSend); rnHttpWebResponse HttpWResp = (HttpWebResponse)myReq.GetResponse();rnStream resStream=HttpWResp.GetResponseStream();rnstring strXml="";rnif (resStream!=null)rnrn StreamReader sr =new StreamReader(resStream ,System.Text.Encoding.GetEncoding("GB2312"));rn strXml =sr.ReadToEnd(); rn sr.Close();rnrnHttpWResp.Close();rnreturn strXml;
PHPstorm 中文字符出现乱码
注释中、代码中只要出现汉子就会出现乱码
Oracle数据库中文字符乱码
关键字 Oracle 中文字符 乱码 原因分析 Oracle服务端和客户端的字符集不一致导致,客户端查询结果乱码 解决方法 在系统环境变量中添加如下内容: 变量名 NLS_LANG。 变量值 SIMPLIFIED CHINESE_CHINA.ZHS16GBK
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池