python - openpyxl讀取xlsx文件把數據生成字典,中文編碼問題?
問題描述
下面的代碼實現的是讀取1.XLSX里面的數據,并且把所有的數據保存在字典my_data中,然后把字典保存到census2010.py 這個文件,以備回頭使用。問題:運行能夠成功。但是輸出出來的文件里,中文內容全部是u’u5f20u5baau798f’:這樣的編碼如何修改編碼,讓字典里面變成正常的中文字符?
import openpyxl, pprintprint(’Opening workbook...’)wb = openpyxl.load_workbook(’1.xlsx’)sheet=wb.get_active_sheet()my_data={}print(’Reading rows...’)for row in range(1,125): cun=sheet[’b’+str(row)].value huzhu=sheet[’c’+str(row)].value renkou1=sheet[’d’+str(row)].value my_data.setdefault(cun,{}) my_data[cun].setdefault(huzhu,{’hushu’:0,’renkou’:0}) my_data[cun][huzhu][’hushu’]+=1 my_data[cun][huzhu][’renkou’]+=int(renkou1)print(’Writing results...’)resultFile = open(’census2010.py’, ’w’)resultFile.write(’allData = ’ + pprint.pformat(my_data))resultFile.close()print(’Done.’)
問題解答
回答1:import codecscodecs.open(’census2010.py’, ’w’, ’utf-8’)回答2:
會不會是在讀的時候就已經是unicode編碼了?
相關文章:
