cancry 发表于 2022-4-20 11:33:12

求助excel遍历问题

本帖最后由 cancry 于 2022-4-20 14:13 编辑

有这样的情况,我需要按行 从第二行开始遍历excel 表格
正常的顺序就是2,3,4,5,6.......... 但是我现在需要 2行3行执行完以后 重复执行2行3行再到4行 5行如此类推
补充一下:应该这样2 3 重复2 3到 45然后45重复45到67   67重复67到89这样

请问代码怎么写

def startjsp():
    wb=vb.load_workbook('2月序时账(2).xlsx')
    # 打开活动工作表
    ws=wb.active
        for row in list(ws.rows):
    # 按行 把每列的值 赋值到L数组
      l=

isdkz 发表于 2022-4-20 11:43:34

这样?def startjsp():
    wb=vb.load_workbook('2月序时账(2).xlsx')
    # 打开活动工作表
    ws=wb.active
    temp = list(ws.rows)
    rows = temp + temp
    for row in rows:
    # 按行 把每列的值 赋值到L数组
      l=

cancry 发表于 2022-4-20 14:09:58

isdkz 发表于 2022-4-20 11:43
这样?

第一次循环了一次 但是后来就不会重复

SJQ007 发表于 2022-4-20 14:21:41

提供一个思路:
把23456这个序列奇数-1偶数不变,就变成224466,循环里读i和i+1行,就能实现232345456767

cancry 发表于 2022-4-20 14:29:22

SJQ007 发表于 2022-4-20 14:21
提供一个思路:
把23456这个序列奇数-1偶数不变,就变成224466,循环里读i和i+1行,就能实现232345456767

是 思路是这样不会写哈哈哈{:5_97:}

SJQ007 发表于 2022-4-20 15:02:42

本帖最后由 SJQ007 于 2022-4-20 15:39 编辑

def startjsp():
    wb=vb.load_workbook('2月序时账(2).xlsx')
    # 打开活动工作表
    ws=wb.active
    temp = list(ws.rows)
    rows = []
    for i in range(len(temp)):
      if i % 2 != 0:
            rows = rows + temp
            rows = rows + temp
            rows = rows + temp
            rows = rows + temp
    for row in rows:
    # 按行 把每列的值 赋值到L数组
      l=
很笨的方法{:5_104:}

isdkz 发表于 2022-4-20 16:20:01

from itertools import chain, repeat
def startjsp():
    wb=vb.load_workbook('2月序时账(2).xlsx')
    # 打开活动工作表
    ws=wb.active
    temp = list(ws.rows)
    end = False
    if len(temp) % 2:
      end = temp.pop()
    temp = zip(*(iter(temp),) * 2)
    rows = (chain(*, ) if end
            else chain(*))
    for row in rows:
    # 按行 把每列的值 赋值到L数组
      l=

cancry 发表于 2022-4-20 17:13:39

isdkz 发表于 2022-4-20 16:20


raise AttributeError, "Chain has not attribute %s" % ident

isdkz 发表于 2022-4-20 17:19:36

cancry 发表于 2022-4-20 17:13
raise AttributeError, "Chain has not attribute %s" % ident

报错信息贴完整一点

cancry 发表于 2022-4-20 17:37:46

isdkz 发表于 2022-4-20 17:19
报错信息贴完整一点

Traceback (most recent call last):
File "E:\python\自动做账\main.py", line 11, in <module>
    import chain
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\chain.py", line 169
    raise AttributeError, "Chain has not attribute %s" % ident
                        ^
SyntaxError: invalid syntax

isdkz 发表于 2022-4-20 17:39:39

本帖最后由 isdkz 于 2022-4-20 17:41 编辑

cancry 发表于 2022-4-20 17:37
Traceback (most recent call last):
File "E:\python\自动做账\main.py", line 11, in
    import...

我的是

from itertools import chain, repeat

itertools 这个模块是python自带的,不需要去安装它
页: [1]
查看完整版本: 求助excel遍历问题