【问题标题】:Checking a dictionary with while loops Python使用while循环Python检查字典
【发布时间】:2021-09-09 05:54:47
【问题描述】:

我正在尝试编写将运行的代码尝试过滤掉dict A 并检查过滤是否失败或result 值是否等于None,然后我希望while 循环重新运行,但是代码的输出显示它只运行一次?我该如何解决这个问题?

A = ({})
while True:
        try:
            updatedCandle = A["result"]
            if updatedCandle is not None:
                print("break")
                break
            
        except: 
            print('\nRETRY\n') 
            A = ({'ret_code': 0, 'ret_msg': 'OK', 'ext_code': '', 'ext_info': '', 'result': None, 'time_now': '1624576211.927034'})
            print(A["result"])

【问题讨论】:

    标签: python-3.x dataframe dictionary while-loop format


    【解决方案1】:

    循环运行一次。事实上,它无限期地运行

    A["result"] 在第一次迭代中产生一个KeyError 并为每个后续迭代返回None,因此break 永远不会执行。

    出于调试目的,添加

    else:
        print('keeps running')
    

    try 块,你会看到它被无限打印。

    【讨论】:

      猜你喜欢
      • 2017-05-19
      • 2016-02-13
      • 1970-01-01
      • 1970-01-01
      • 2022-11-11
      • 2016-03-07
      • 2012-10-05
      • 1970-01-01
      • 2021-07-22
      相关资源
      最近更新 更多