python 处理中文Excel

如果Python要处理Excel,需要一个“xlrd"包, [ xls read], download line: http://pypi.python.org/pypi/xlrd

cd 到目录下边:

输入:python setup.py install 安装即可

读取很简单,网上随便一搜都会有,例如按行读取:

import xlrd
#import chardet
data = xlrd.open_workbook("emotion.xlsx")
table = data.sheets()[0]
nrows = table.nrows
for i in range(nrows):
#print chardet.detect(str(table.row_values(i)))
        print table.row_values(i)




可是这样在Linux Terminal 打印出来的是乱码,把打印语句改成:

 	print str(table.row_values(i)).decode("unicode_escape").encode("utf8")

 

为什么是这样? 可以从Ubuntu 的系统设置中看到,控制器显示的字符是UTF8的,所以最后需要encode成UTF8的,2.为什么要用decode? 因为要encode成UTF8,得是unicode格式的字符串才行,但是默认的字符串是str型的,所有需要把其他的字符编码转成UNICODE才行,然后,因为打印出来的乱码是. u'\XXX' 这种形式, 所以根据经验应该是unicode_escape形式。

okay,说完啦。

你可能感兴趣的:(技术记录)