Python 2.7中文显示与处理方法

yipeiwu_com6年前Python基础

在学习使用Python的过程中,一定会遇到文字输入与处理,这就不可避免的会使用中文字符。但是Python2.7默认使用的字符集是ASCII,并不支持中文字符的显示与处理,因些如果要在Python中处理中文就需要进行一些额外的处理。

一、在开头处声明Python使用UTF-8编码显示字符

#/usr/bin/env python
# -*- coding: UTF-8 -*-

但这样做,只是让你的程序在运行的过程中显示中文,如果你要将中文字符存储在文件中,或者写入到数据库中,这样的设置是不能满足你的需要。

二、设置系统默认字符编码

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

也许是Python的bug在import sys后必须再一次reload(sys),下面去设置默认字符编码的语句才能生效。

三、遇到需要处理中文的地方,就随时进行UTF-8编码

经常会遇到的是,进行了第一步和第二步设置后,还是无法正常显示和处理中文字符,这时也只能随用随编码了。

假设待处理字符串为string

使用下面的语句进行utf-8编码:

string.encode('utf-8')

使用下面的语句进行utf-8解码:

unicode(string, encoding='utf-8')

如果为了方便可以将上面二个语句写成方法随时调用:

def encode_utf8(string):
 return string.encode('utf-8')

def decode_utf8(string)
 return unicode(string, encoding='utf-8')

以上这篇Python 2.7中文显示与处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

基于numpy中数组元素的切片复制方法

代码1: #!/usr/bin/python import numpy as np arr1 = np.arange(10) print(arr1) slice_data...

对Python2与Python3中__bool__方法的差异详解

学习Python面向对象编程的时候,遇到了一个很有意思的小问题。Python的__bool__方法不起作用的问题。 我反复读了我手中的教程,确认了我写的代码应该管用。可是在测试的时候却一...

Python实现基于权重的随机数2种方法

问题: 例如我们要选从不同省份选取一个号码,每个省份的权重不一样,直接选随机数肯定是不行的了,就需要一个模型来解决这个问题。 简化成下面的问题:  字典的key代表是省份,va...

决策树剪枝算法的python实现方法详解

决策树剪枝算法的python实现方法详解

本文实例讲述了决策树剪枝算法的python实现方法。分享给大家供大家参考,具体如下: 决策树是一种依托决策而建立起来的一种树。在机器学习中,决策树是一种预测模型,代表的是一种对象属性与...

python实现本地批量ping多个IP的方法示例

本文主要利用python的相关模块进行批量ping ,测试IP连通性。 下面看具体代码(python3): ''' 遇到问题没人解答?小编创建了一个Python学习交流QQ群:8...