尝试编写递归函数以迭代嵌套字典时遇到RecursionError - python

我试图通过使用递归函数来迭代嵌套字典,但是最后我收到一条消息,提示

  RecursionError:调用Python对象时超出最大递归深度

def iterate_over(var):
   if(len(var)>1):
      iterate_over(var)
   else:
      return var

temp={'A':[{'B':[{'D':23},{'E':43}]},{'C':44}]}
iterate_over(temp['A'])

python大神给出的解决方案

之所以收到RecursionError,是因为条件len(var) > 1始终为true,因为您没有在函数内部更新var

我不确定您要完成什么,但是您的函数应如下所示:

def iterate_over(var):
   if(len(var) > 1):
      return iterate_over(var[1:])
   else:
      return var

Python sqlite3数据库已锁定 - python

我在Windows上使用Python 3和sqlite3。我正在开发一个使用数据库存储联系人的小型应用程序。我注意到,如果应用程序被强制关闭(通过错误或通过任务管理器结束),则会收到sqlite3错误(sqlite3.OperationalError:数据库已锁定)。我想这是因为在应用程序关闭之前,我没有正确关闭数据库连接。我已经试过了: connectio…

Python pytz时区函数返回的时区为9分钟 - python

由于某些原因,我无法从以下代码中找出原因:>>> from pytz import timezone >>> timezone('America/Chicago') 我得到:<DstTzInfo 'America/Chicago' LMT-1 day, 18:09:00 STD…

用大写字母拆分字符串,但忽略AAA Python Regex - python

我的正则表达式:vendor = "MyNameIsJoe. I'mWorkerInAAAinc." ven = re.split(r'(?<=[a-z])[A-Z]|[A-Z](?=[a-z])', vendor) 以大写字母分割字符串,例如:'我的名字是乔。 I'mWorkerInAAAinc”变成…

Python:同时在for循环中添加到列表列表 - python

我想用for循环外的0索引值创建一个新列表,然后使用for循环添加到相同的列表。我的玩具示例是:import random data = ['t1', 't2', 't3'] masterlist = [['col1', 'animal1', 'an…

在Python中迭代OrderedDict - python

我有以下OrderedDict:OrderedDict([('r', 1), ('s', 1), ('a', 1), ('n', 1), ('y', 1)]) 实际上,这表示单词中字母的出现频率。第一步-我将使用最后两个元素来创建一个这样的联合元组; pair…