报错代码的来源是什么?

报错代码的来源是什么?

报错代码:

Error: 'object' is not iterable

代码:

objects = [
    {"name": "John", "age": 30},
    {"name": "Mary", "age": 25},
    {"name": "Bob", "age": 40}
]

for object in objects:
    print(object["name"])

代码中的错误:

代码中的 for 循环遍历 objects 列表中的对象。然而,objects 列表中不是可迭代的,因为它包含字典对象,而字典对象不是可迭代的。

解决方案:

可以将 objects 列表转换为可迭代的列表,例如使用列表 comprehension 或 iter() 函数。

修改后的代码:

objects = [
    {"name": "John", "age": 30},
    {"name": "Mary", "age": 25},
    {"name": "Bob", "age": 40}
]

# 使用列表 comprehension
names = [object["name"] for object in objects]

# 使用 iter() 函数
names = iter([object["name"] for object in objects])

for name in names:
    print(name)

注意:

  • iter() 函数会创建一个迭代器,该迭代器允许您遍历 objects 列表中的元素。
  • for 循环使用 names 列表中的元素来打印 object["name"]
相似内容
更多>