我该如何遍历这样的字典?

-1 投票
1 回答
1643 浏览
提问于 2025-04-18 15:01

我发现了一个字典:

catalog = {"threads":{"39894014":{"date":1390842451,"r":0,"i":0,"lr":  {"id":39894014},"semantic_url":"the-g-wiki-g-is-for-the-discussion-  of-technology","sticky":1,"closed":1,"capcode":"mod"}}

我知道我可以通过写 data["threads"]["39894014"]["date"] 来访问“date”,但是有没有办法跳过第二个部分(["39894014"])呢?因为这个数字是随机生成的,所以列表可能会改变,可能会是一个完全不同的数字。

1 个回答

0

你需要遍历一下字典中 'threads' 这个键对应的值里的所有键或者值。如果字典里只有一个线程,你可以直接提取那个字典,方法是:

thread = next(data['threads'].values())
print(thread['date'])

如果你不在乎外面的字典保持原样的话,可以直接用 dict.popitem() 来取出里面的内容:

threadid, thread = data['threads'].popitem()
print(thread['date'])

如果想要获取 所有 的条目,你可以遍历一下,然后抓取日期:

all_dates = [thread['data'] for thread in data['threads'].values()]

撰写回答