‘壹’ 请问,python打开中文字符文件,但显示不出中文怎么办
一般是编码格式的问题,python内部默认的编码格式是utf-8,常见的文本编码格式是utf-8,gbk。编码格式不不一致就会乱码。可以在代码前面申明编码格式。
‘贰’ python怎么输出中文
打开Python编译器,在代码的第一行设置编码格式,加入#-*-coding:utf-8-*-即可。
相关推荐:《Python基础教程》
如下:
‘叁’ python怎么显示中文
# -*- coding:gb2312 -*-
加上这句
‘肆’ python3怎么输出中文字符
直接使用print( '中文汉字')
这样就可以输出中文 需要把文件存成utf-8编码
‘伍’ 如何在运行python的时候显示中文
最前面加上 #coding:utf-8
如果是字符串的输出有问题可以用decode eg:
your_str.decode('utf-8')
也可以这样:
print u"your_str"
‘陆’ python界面怎么调成中文版
python设置中文界面的方法:
找到windows10中文字体所在文件夹
C:/Windows/Fonts/
在代码前面加上:
import matplotlib.pyplot as plt plt.rcParams['font.sans-serif']=['simhei'] # 添加中文字体为黑体 plt.rcParams['axes.unicode_minus'] =False ... #ax[0, 0].set_ylabel(u"哈哈") #
注意前面加上'u'. #ax[2, 0].set_ylabel(u"嘿嘿") ... #或 import matplotlib.pyplot as plt from matplotlib import font_manager my_font =
font_manager.FontProperties(fname="C:/Windows/Fonts/simsun.ttf") # 添加中文字体为黑体 ... ax[0, 0].set_ylabel(u"哈哈", fontproperties=my_font) ax[2, 0].set_ylabel(u"嘿嘿", fontproperties=my_font)
发展历程
自从20世纪90年代初Python语言诞生至今,它已被逐渐广泛应用于系统管理任务的处理和Web编程。
1995 年,Guido van Rossum 在弗吉尼亚州的国家创新研究公司(CNRI)继续他在 Python 上的工作,并在那里发布了该软件的多个版本。
2000 年五月,Guido van Rossum和 Python 核心开发团队转到 BeOpen.com 并组建了 BeOpen PythonLabs 团队。 同年十月,BeOpen PythonLabs 团队转到 Digital Creations (现为 Zope Corporation)。
2001 年,Python 软件基金会 (PSF) 成立,这是一个专为拥有 Python 相关知识产权而创建的非营利组织。 Zope Corporation 现在是 PSF 的赞助成员。
‘柒’ 在Python3中如何输出中文
例子:a="您好"
print(a)
就直接运行还会报错的原因是本人本人新建的文件编码默认是ANSI,需要修改一下文件的编码为utf-8,就可以了。
修改文件编码可以这样做:用系统自带的记事本打开,然后按另存为,在保存的时候,会可选择的编码。
‘捌’ python中如何将字典中的中文显示出来
在python脚本的第一行加上#encoding=utf-8即可。
程序如下:
'''
Created on 2011-9-24
@author: legendxx
'''
#encoding=utf-8
f=file("test.txt","r")
print f.readline()
f.close
test.txt的内容只读取第一行,可以正常打印出来中文。
‘玖’ python 无法显示汉字
实际上,这段代码所出现的问题和cPickle模块没什么关系。而是Python 2显示中文“乱码”的问题。
Python 2中,str是8-bit string sequence(有点像Python 3中的bytes)。而Python 3中str就相当于Python 2中的unicode。
所以,
>>>a='上海'
>>>repr(a)
"'\xc9\xcf\xba\xa3'"
>>>a#a中存储的8字节转义字符序列
'xc9xcfxbaxa3'
>>>printa#输出a,在此过程中,会对a进行解码操作,然后输出
上海
上例中,可以看到:
a = '上海'
a中实际存储的是:
'xc9xcfxbaxa3'
这样一个字节序列。它实际上是对'上海'这个unicode字符串按gbk/cp936/gb18030编码得到的(和简体中文Windows操作系统的默认编码有关)。
给你推荐一篇博客:
http://blog.csdn.net/kiki113/article/details/4062063
下面是我写的示例:
#_*_coding:gbk_*_
#TestwithPython2.7,Python3.3onWindowsXP
try:
importcPickleasp
except:
importpickleasp
address_file='address.txt'
classHuman(object):
def__init__(self,address):
self.address=address
deftxl(self):
af={'address':self.address}
print(af)
print(af['address'])
f=open(address_file,'wb')#Inpython3,usebinarymode.
#Inpython2.7,defaultprotocolis0.
#However,itis3inpython3.3.
p.mp(af,f,0)
f.close()
address='上海'
print(address)
dq=Human(address)
dq.txl()
af=open(address_file,'rb')#
print(p.load(af))
af.close()
"""
Output
----------------------------------------
Python2.7.6:
1.#-*-coding:utf-8-*-
涓婃捣
{'address':'xe4xb8x8axe6xb5xb7'}
涓婃捣
{'address':'xe4xb8x8axe6xb5xb7'}
2.#-*-coding:gbk-*-or#_*_coding:cp936_*_
上海
{'address':'xc9xcfxbaxa3'}
上海
{'address':'xc9xcfxbaxa3'}
Python3.3.3:
上海
{'address':'上海'}
上海
{'address':'上海'}
------------------------------------------
InPython3.3.3:
>>>'上海'.encode('utf-8')
b'xe4xb8x8axe6xb5xb7'
>>>_.decode('cp936')
'涓婃捣'
"""
从这个示例中可以看出,虽然把字典整个print出来不能正常解析address中的内容:
>>>addr={'addr':'上海'}
>>>addr
{'addr':'xc9xcfxbaxa3'}
>>>printaddr
{'addr':'xc9xcfxbaxa3'}
但是单独打印:
>>>addr['addr']
'xc9xcfxbaxa3'
>>>printaddr['addr']#print输出之前隐含了编码解码操作,但为何打印整个字典时输出不正常尚待研究
上海
一切OK。
所以,如果真的用Python 2的话,对于该问题可以考虑手工负责编码、解码操作(如果使用print单独打印地址信息,就不用这么麻烦了,因为这些事它帮你做了)。用Python3,就没这么多问题了。
最后补充一点,pickle模块只是提供了一种序列化Python对象的方法。所以序列化生成的文件中和想象的不一样也不足为奇。正如自由de王国所说的,只要序列化后还能够反序列化成功就行了。实际上,当protocol不是0的情况下,序列化生成的文件是二进制格式的,根本没法用记事本直接看。
‘拾’ python如何输入输出中文
1,在文件夹中新建一个test.py的文件。