从excel文件python3中读取汉字

我有一个Excel文件,包含两列,第一个是中文,第二个是链接。 我尝试了两种方法,我在这里find。 但它没有工作,我不能打印在控制台的值,我改变我的编码variables设置(pycharm)到U8,仍然无法正常工作。 我使用pandas&xlrd库,都没有工作,而其他谁张贴的工作。 这是我现在的代码:

from xlrd import open_workbook class Arm(object): def __init__(self, id, dsp_name): self.id = id self.dsp_name = dsp_name def __str__(self): return("Arm object:\n" " Arm_id = {0}\n" " DSPName = {1}\n" .format(self.id, self.dsp_name)) if __name__ == '__main__': wb = open_workbook('test.xls') for sheet in wb.sheets(): print(sheet) number_of_rows = sheet.nrows number_of_columns = sheet.ncols items = [] rows = [] for row in range(1, number_of_rows): values = [] for col in range(number_of_columns): value = str(sheet.cell(row, col).value) for a in value: print('\n'.join([a])) values.append(value) print(value) for item in items: print (item) print("Accessing one single value (eg. DSPName): {0}".format(item.dsp_name)) print 

显然它不工作,放弃后我只是乱搞。 文件: http : //www59.zippyshare.com/v/UxITFjis/file.html

这不是关于编码,你没有访问正确的行。

在线24
for row in range(1, number_of_rows):

你为什么要从1开始,而不是0。
尝试for row in range(number_of_rows):

那么我的问题其实不是在读汉字呢! 我的问题,我们在控制台打印。 我认为,打印编码器工作正常,我只是没有读它的字符,但是这个代码工作正常:

 from xlrd import open_workbook wb = open_workbook('test.xls') messages = [] links = [] for sheet in wb.sheets(): number_of_rows = sheet.nrows number_of_columns = sheet.ncols for row in range(1, number_of_rows): i = 0 for col in range(number_of_columns): value = (sheet.cell(row,col).value).encode('gbk') if i ==0: messages.append(value) else: links.append(value) i+=1 print(links) 

检查它,我把第一个结果粘贴到selenium驱​​动器(因为我打算使用它)

 element = driver.find_element_by_class_name('email').send_keys(str(messages[0],'gbk')) 

它就像一个魅力!