在写python脚本时, 应该在文件的开头就包含下面这句, 标明文件的编码
同时把你的脚本文件要存成utf-8编码格式.
关于python中文乱码,可以参考文章:http://happylaoyu.i.sohu.com/blog/view/111505796.htm
文件为utf-8编码, 这样也不行, 会报错. 一定要加上 #coding=utf-8. 改为
输出
[size=x-large]文件读写[/size]
1. utf-8或ascii文件的读写
2. 读写编码文件
#coding=utf-8
print '中文'
同时把你的脚本文件要存成utf-8编码格式.
关于python中文乱码,可以参考文章:http://happylaoyu.i.sohu.com/blog/view/111505796.htm
import sys
default_encoding = 'utf-8'
if sys.getdefaultencoding() != default_encoding:
print '进来了'
reload(sys)
sys.setdefaultencoding(default_encoding)
print '吐,我在这里'
文件为utf-8编码, 这样也不行, 会报错. 一定要加上 #coding=utf-8. 改为
#coding=utf-8
import sys
default_encoding = 'utf-8'
if sys.getdefaultencoding() != default_encoding:
print '进来了'
reload(sys)
sys.setdefaultencoding(default_encoding)
print '吐,我在这里'
输出
进来了
吐,我在这里
[size=x-large]文件读写[/size]
1. utf-8或ascii文件的读写
#coding=utf-8
import sys
#这里的a.txt为utf-8编码. 如果为gb2312编码, 则会错误
f = open("c:/a.txt", 'r')
s1 = f.readline() #读取一行
print s1
s = f.read() #读全部
s = f.readlines() #按字节读取出来 类似于['\xe6\x8c\x89\n', '\xe6\xa1\x88']. 这里是一个数组, 一行就是一个元素
2. 读写编码文件
#coding=utf-8 这行很重要,一定要包含
#codes 用于编码文件, 用codecs 时
import codecs
f = codecs.open("c:/a.txt", 'r', 'gb2312')
s1 = f.readline()
print s1