我无法将逻辑包裹在我的头上。有人可以建议解决方案吗?
我有一个excel文件,其中有10000个项目,在Worksheet0的A行中我想迭代行,但以200人为单位。这是我的干算法,我似乎无法将其放入代码中:
-
读取一个excel文件,worksheet0作为源
-
使用OpenPyxl,Worksheet1
创建一个空的Excel工作表 iTereate在a源工作表A列中的第一个200个字符串项目中,来自源工作表0
a。strip()每个字符串项目b。在工作表1 Columna中保存"剥离"新字符串,Row1:Row200
- 创建一个新的空工作表,工作表2
- 在Worksheet0 Row201:400的下一个200个字符串项目中迭代A。条()b。保存在工作表中2
重复此新工作表的创建,在此新工作表中为每组200
保存并保存我只是无法将算法迭代200组,每个新组创建一个新的工作表文件。谁能帮助算法?
# rowMax is the last row in columnA aka the length of my list to iterate over
for count in range(1, int(rowMax/200)):
_=wb.create_sheet(str(count))
for row in range(count*2, 200*count):
targetEmail = str(ws1.cell(column=1, row=row).value).strip()
sourceEmail = str(ws1.cell(column=1, row=row).value)
if targetEmail != sourceEmail:
print("Correction required for: ", sourceEmail, "nChanged to: ", targetEmail)
_.cell(column=1, row=row).value = targetEmail
上述不起作用。我只是把它放在那儿,所以您了解我创建一个新工作表的每200个项目,然后在该新工作表中保存下来的200个项目,然后重复每个200个项目块
这个问题太广泛。您需要提供更多的代码,并更具体地解决要解决的问题。
类似以下内容应该帮助您开始。
colA = ws1['A']
for idx, cell in colA:
if not idx % 200:
ws2 = wb.create_sheet()
ws2.append(cell.value.strip())