python27显示中文
‘壹’ python2.7.9无法输出中文
python2.7及以下,输出字符默认为标准ASCII (0- 127,也就是 byte字符),显示乱码应该是你输出的是 utf-8 编码字符串,windows控制台默认编码是gbk(可以通过命令CHCP 65001 设置为utf-8),报错是因为你输出的是 unicode 字符(包含128-255)
新人如果对编码不是很了解,那最好的解决办法就是,封装一个unicode转byte函数,对于要输出的字符,都调用这个函数,如:
defu2b(text):
ifnotisinstance(text,unicode):
returntext
returntext.encode('utf-8')
‘贰’ 请问python2.7无法正常显示中文(windos7+python2.7.9+pycharm2.7.3),怎么解决
查看你爬取的地址页面的编码方式,比如是gb2312,那么,解码tags1如下:
tags1 = unicode(tags1,'gb2312')
‘叁’ 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界面怎么调成中文版
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 的赞助成员。
‘伍’ Python绘图如何显示中文标题
采用matplotlib作图时默认设置下是无法显示中文的,例如编写如下python脚本,
#-*- coding: utf-8 -*-
from pylab import *
t = arange(-4*pi, 4*pi, 0.01)
y = sin(t)/t
plt.plot(t, y)
plt.title(u'钟形函数')
plt.xlabel(u'时间')
plt.ylabel(u'幅度')
plt.show()
显示出来的结果如图1所示,可见标题、标签都无法正常显示中文:
图1
实际上,matplotlib是支持unicode编码的,出现图1的问题主要是没有找到合适的中文字体,在matplotlib的配置文件中,可以看到字体的默认设置如下:
#font.family : sans-serif
#font.sans-serif : Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
并没有中文字体,所以我们只要手动添加中文字体的名称就可以了,不过并不是添加我们熟悉的“宋体”或“黑体”这类的名称,而是要添加字体管理器识别出的字体名称,matplotlib自身实现的字体管理器在文件font_manager.py中,自动生成的可用字体信息在保存在文件fontList.cache里,可以搜索这个文件查看对应字体的名称,例如simhei.ttf对应的名称为’SimHei’,simkai.ttf对应的名称为’KaiTi_GB2312’等。因此我们只要把这些名称添加到配置文件中去就可以让matplotlib显示中文,修改的方法有两种:
1. 直接修改配置文件matplotlibrc
在配置文件中找到font.sans-serif的设置,然后添加需要的中文字体名称,例如:
font.sans-serif : SimHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
2. 动态设置(推荐方式)
在python脚本中动态设置matplotlibrc,这样不需要更改配置文件,方便灵活,例如:
mpl.rcParams['font.sans-serif'] = ['SimHei']
修改后的代码如下:
#-*- coding: utf-8 -*-
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
t = arange(-4*pi, 4*pi, 0.01)
y = sin(t)/t
plt.plot(t, y)
plt.title(u'钟形函数')
plt.xlabel(u'时间')
plt.ylabel(u'幅度')
plt.show()
显示出来的结果如图2所示,可见标题、标签都能正常显示中文:
图2
但是细心些可以看出图2显示的结果并不正确,注意对比图1和图2的横坐标的坐标值,会发现图2中负轴的横坐标值不对,负号不见了!很明显,这不是程序的错误,而是由于更改了字体导致显示不出负号,在配置文件中我们可以在axes相关设置里找到如下设置:
#axes.unicode_minus : True
可见默认情况下采用的是unicode的minus,看来我们选择的字体对这点支持不够,所以只要把它设置为False就可以了,最终的代码如下:
#-*- coding: utf-8 -*-
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False
t = arange(-4*pi, 4*pi, 0.01)
y = sin(t)/t
plt.plot(t, y)
plt.title(u'钟形函数')
plt.xlabel(u'时间')
plt.ylabel(u'幅度')
plt.show()
最终显示的结果如图3所示,一切都正常了。
‘陆’ python2.7中怎么显示出中文
以下代码调试通过:
#-*-coding:utf-8-*-
age_of_boy=11
guess_age=input("age_of_boy:")
ifint(guess_age)==age_of_boy:
print"猜对啦!!!"
else:
print"没有猜对哦!!"
运行效果:
‘柒’ 如何在运行python的时候显示中文
最前面加上 #coding:utf-8
如果是字符串的输出有问题可以用decode eg:
your_str.decode('utf-8')
也可以这样:
print u"your_str"
‘捌’ 请问python 2.7中要怎样才可以使用中文 代码中不能出现任何中文,但是3.4却可以。初学
python3中默认使用UTF-8编码,因此可以直接写中文进去。
python2需要在文件头部增加一行特别的注释声明文件编码
#!/usr/bin/envpython
#-*-coding:utf-8-*-
#上面这行就是声明文件编码的注释
if__name__=='__main__':
print'Helloworld!'
‘玖’ python2.7打印中文乱码怎么办
由于python默认以ASCII编码,所以不支持中文。所以我们需要在代码前面写上“#_*_ coding:utf-8 _*_”或者#coding=utf-8.当然,如
果你代码中没有中文,就不需要加上了。
还有一个原因,由于python所运行的操作系统决定的,windows默认的编码方式是GBK编码,所以这也是一个导致中文乱码的原因之
一。
建议是不管你用什么,先在代码前面加上这一串,一定不会出现问题。
推荐学习《Python教程》。