Openpyxl删除单元格
Openpyxl deleting cells
我想选择列表的最后 20
项,将它们复制到一个新的电子表格中,复制后我想从第一个电子表格中 delete
它们。
我有第一部分(复制最后 20 个)但我不确定如何 delete
那个单元格所以它在我保存后不会显示为 none
。
过滤 = [-20:]
我如何从电子表格中删除这 20 个单元格?
def cell_values(somesheet):
# extract the last 20 items from the worksheet
filtered = [x for x in somesheet.rows if x is not None]
last20 = filtered[-20:]
extracted_values = []
for row in last20:
for cell in row:
# print cell.value
extracted_values.append(cell.value)
问题是 filtered = [x for x in sheet.rows if x is not None]
不工作,实际上将 None
项添加到 filtered
列表
我如何确保它只挑选最后 20 个不是 none
的项目?
以及在我从列表中选择它们后删除它们
[x for x in somesheet.rows if x is not None]
将 return 行列表,因为 ws.rows
return 是行列表。
目前无法从工作表中删除单元格。最好的办法是将它们的值设置为 None。除非它们具有特殊格式,否则它们将在保存文件时从工作表中删除。调用 ws.garbage_collect()
已被弃用,因为它没有意义。
我想选择列表的最后 20
项,将它们复制到一个新的电子表格中,复制后我想从第一个电子表格中 delete
它们。
我有第一部分(复制最后 20 个)但我不确定如何 delete
那个单元格所以它在我保存后不会显示为 none
。
过滤 = [-20:] 我如何从电子表格中删除这 20 个单元格?
def cell_values(somesheet):
# extract the last 20 items from the worksheet
filtered = [x for x in somesheet.rows if x is not None]
last20 = filtered[-20:]
extracted_values = []
for row in last20:
for cell in row:
# print cell.value
extracted_values.append(cell.value)
问题是 filtered = [x for x in sheet.rows if x is not None]
不工作,实际上将 None
项添加到 filtered
列表
我如何确保它只挑选最后 20 个不是 none
的项目?
以及在我从列表中选择它们后删除它们
[x for x in somesheet.rows if x is not None]
将 return 行列表,因为 ws.rows
return 是行列表。
目前无法从工作表中删除单元格。最好的办法是将它们的值设置为 None。除非它们具有特殊格式,否则它们将在保存文件时从工作表中删除。调用 ws.garbage_collect()
已被弃用,因为它没有意义。