Python 用 openpyxl 模块统计 Excel 表格中的数据,以字典形式写入 py 文件


1、加载模块,设置路径,读取表格

import os import openpyxl import pprint os.chdir('D:\\pySpace') print('Opening workbook...') wb = openpyxl.load_workbook('censuspopdata.xlsx')    # 加载电子表格
sheet = wb.get_sheet_by_name('Population by Census Tract') countyData = {}

 

 2、f遍历所有的行, 汇总各州的每个县的统计地区数和每个县的人口数,将数据填充到字典 countyData 中。

print('Reading rows...') for row in range(2, sheet.max_row + 1): # 每一行包含一个普查地区的数据
    state = sheet['B' + str(row)].value county = sheet['C' + str(row)].value pop = sheet['D' + str(row)].value # 保证字典里以州命名的第一层键存在
 countyData.setdefault(state, {}) # 确保以每个州的每个县命名第二层键存在
    countyData[state].setdefault(county, {'tracts': 0, 'pop': 0}) # 对每个县统计地区的进行累加计数
    countyData[state][county]['tracts'] += 1
    # 对每个县的人口累加计数
    countyData[state][county]['pop'] += int(pop)

 

 3、创建 py 文件,并将之前生成的字典数据写入其中。

print('Wring results...') resultFile = open('census2010.csv', 'w') resultFile.write('allData = ' + pprint.pformat(countyData)) resultFile.close() print('Done.')

 

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM