遍历字典列表并打印消息

1 python dictionary list

我有一个类似于以下内容的字典列表:

points = [
{"callsign": "A001", "daily_points":10, "number":"+447774076621"},
{"callsign": "A002", "daily_points":5, "number":"+447958708481"}
]
Run Code Online (Sandbox Code Playgroud)

我正在尝试迭代列表以打印消息,例如:“嗨 A001,您今天收到了 10 分”

我尝试使用以下代码:

for callsign, daily_points in points.items():
print(f"Hi {callsign} you recieved {daily_points} points today.")
Run Code Online (Sandbox Code Playgroud)

但它返回: AttributeError: 'list' object has no attribute 'items'

我究竟做错了什么?

Tri*_*oan 5

points是一个列表,而不是字典。您必须循环遍历列表中的每个元素,然后读取字典。代码看起来像这样:

for point in points:
    print(f"Hi {point['callsign']} you received {point['daily_points']} points today.")
Run Code Online (Sandbox Code Playgroud)