同时没有预期行为的循环

问题描述 投票:0回答:1

我从Python开始。在当前代码中,A1被无限“返回”,就好像没有变量célula的总和一样。我该怎么做才能从A1和A2获得“回报”?

import xlwings as xw

wb = xw.Book(r'C:\Users\Guilh\bin\teste\Contabilização Automática\myproject\myproject.xlsx')

sht = wb.sheets[0]

def buscar():

    linha = '1'
    célula = 'A' + linha
    valor_célula = sht.range(célula).value

    while valor_célula != None:
        print('A1')

        linha = int(linha) + 1
        célula = 'A' + str(linha)

    else:
        print('A2')
python while-loop
1个回答
0
投票

您忽略了更新valor_célula,因此陷入了while循环中。

我相信您希望将代码更新为:

def buscar():

    linha = '1'
    célula = 'A' + linha
    valor_célula = sht.range(célula).value

    while valor_célula != None:
        print('A1')

        linha = int(linha) + 1
        célula = 'A' + str(linha)
        valor_célula = sht.range(célula).value  # Update Value

    else:
        print('A2')
© www.soinside.com 2019 - 2024. All rights reserved.