Python Excel 写入去重:如何避免重复数据写入 Excel 文件
Python Excel 写入去重:如何避免重复数据写入 Excel 文件
在使用 Python 的 xlsxwriter 库写入 Excel 文件时,您可能需要避免重复数据写入。本文将介绍如何实现这一功能。
问题:
您的写入函数并没有包含去重的功能。要实现去重,您可以在写入之前先对数据进行去重处理。
解决方案:
您可以使用 Python 的 set() 函数来去重。具体的做法如下:
- 在写入函数的开始处添加一个空的集合(set)来存储已经写入的数据。
- 在循环写入之前,对每个要写入的数据进行判断,如果该数据已经在集合中存在,则跳过该数据,不进行写入。
- 在写入完成后,将新写入的数据添加到集合中。
示例代码:
def write(infors_list, file_path):
workbook = xlsxwriter.Workbook(file_path, {'nan_inf_to_errors': True}) # 新建excel表
worksheet = workbook.add_worksheet('sheet1') # 新建sheet(sheet的名称为'sheet1')
headings = ['企业名称', '备案编号', '服务性质', '法定代表人','网站负责人', '单位地址', '网站名称',
'网站主服务器域名','网站其他服务器域名', '备案机关','备案日期','备案状态'] # 设置表头
worksheet.write_row('A1', headings)
written_data = set() # 存储已经写入的数据
for inf in infors_list:
if inf not in written_data:
index = infors_list.index(inf)
worksheet.write_row('A{:}'.format(index + 1), inf)
written_data.add(inf) # 将新写入的数据添加到集合中
workbook.close()
解释:
written_data = set()创建一个空的集合written_data来存储已写入的数据。if inf not in written_data:检查当前要写入的数据inf是否已经在written_data中。- 如果
inf不在written_data中,则写入数据并将其添加到written_data中。
注意:
- 此代码示例假设您要写入的数据是可哈希的。如果您要写入的数据不可哈希,则需要使用其他方法来实现去重。
set()函数会自动去重,因此无需手动去重。
通过使用 set() 函数和简单的判断语句,您就可以轻松地避免重复数据写入 Excel 文件。
原文地址: http://www.cveoy.top/t/topic/pSFl 著作权归作者所有。请勿转载和采集!