Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 每次循环运行时递增1_Python_Excel_Loops_Openpyxl - Fatal编程技术网

Python 每次循环运行时递增1

Python 每次循环运行时递增1,python,excel,loops,openpyxl,Python,Excel,Loops,Openpyxl,我如何使单元格数在每次循环通过所有表时增加一个?我让它在不同的表中循环,但我不确定如何向单元格值添加+1 for sheet in sheetlist: wsX = wb.get_sheet_by_name('{}'.format(sheet)) ws2['D4'] = wsX['P6'].value 我正试图将['D4']更改为D5、D6、D7。。自动将etc设置为25 在循环外部写入此内容: for i, sheet in enumerate(sheetl

我如何使单元格数在每次循环通过所有表时增加一个?我让它在不同的表中循环,但我不确定如何向单元格值添加+1

for sheet in sheetlist:
        wsX = wb.get_sheet_by_name('{}'.format(sheet))

        ws2['D4'] = wsX['P6'].value

我正试图将
['D4']
更改为D5、D6、D7。。自动将etc设置为25

在循环外部写入此内容:

for i, sheet in enumerate(sheetlist):
    wsX = wb.get_sheet_by_name('{}'.format(sheet))

    cell_no = 'D' + str(i + 4)
    ws2[cell_no] = wsX['P6'].value
x = 'D4'
x = x[0] + str(int(x[1:])+1)
在循环中写入以下内容:

x = 'D4'
x = x[0] + str(int(x[1:])+1)

在循环之外写入此内容:

x = 'D4'
x = x[0] + str(int(x[1:])+1)
在循环中写入以下内容:

x = 'D4'
x = x[0] + str(int(x[1:])+1)

试试这个。。。它的评论,所以你可以理解它在做什么

#counter
i = 4

for sheet in sheetlist:
    #looping from D4 to D25
    while i <= 25:
        wsX = wb.get_sheet_by_name('{}'.format(sheet))

        #dynamic way to get the cell
        cell1 = 'D' + str(i)

        ws2[cell1] = wsX['P6'].value

        #incrementing counter
        i += 1
#计数器
i=4
对于图纸列表中的图纸:
#从D4到D25的循环

而我试试这个。。。它的评论,所以你可以理解它在做什么

#counter
i = 4

for sheet in sheetlist:
    #looping from D4 to D25
    while i <= 25:
        wsX = wb.get_sheet_by_name('{}'.format(sheet))

        #dynamic way to get the cell
        cell1 = 'D' + str(i)

        ws2[cell1] = wsX['P6'].value

        #incrementing counter
        i += 1
#计数器
i=4
对于图纸列表中的图纸:
#从D4到D25的循环

我不需要计数器或笨拙的字符串转换:openpyxl提供了一个用于编程访问的API

for idx, sheet in enumerate(sheetlist, start=4):
   wsX = wb[sheet]
   cell = ws2.cell(row=idx, column=16)
   cell.value = wsX['P6']

不需要计数器或笨拙的字符串转换:openpyxl提供了用于编程访问的API

for idx, sheet in enumerate(sheetlist, start=4):
   wsX = wb[sheet]
   cell = ws2.cell(row=idx, column=16)
   cell.value = wsX['P6']

你能添加一个完全可复制的示例吗?你需要第二个循环。你应该包括所有相关的代码。你能添加一个完全可复制的示例吗?你需要第二个循环。你应该包括所有相关的代码。