Py学习  »  Python

如何在Python中引用字典的特定部分

Cool Man • 4 年前 • 918 次点击  

好吧,所以我试着创造一个简单的东西,告诉我在剧院的电影放映时间,电影的名字,和腐烂的西红柿在蟒蛇的得分,但我有一个很难弄清楚如何得到麦特核心。

actorCount = 0
actors = []
criticCount = 0
critics = []
franchiseCount = 0
franchises = []
movieCount = 3
movies = [{'name': 'Frozen II', 'year': 2019, 'url': '/m/frozen_ii', 'image': 'https://resizing.flixster.com/QZg2MuPQoRlWcWYAwufbQBlv-I0=/fit-in/80x80/v1.bTsxMzIwMzIxODtqOzE4Mjg3OzEyMDA7NTQwOzgxMA', 'meterClass': 'certified_fresh', 'meterScore': 76, 'castItems': [{'name': 'Kristen Bell', 'url': '/celebrity/kristin_bell'}, {'name': 'Idina Menzel', 'url': '/celebrity/idina_menzel'}, {'name': 'Josh Gad', 'url': '/celebrity/josh_gad'}], 'subline': 'Kristen Bell, Idina Menzel, Josh Gad, '}]
tvCount = 0
tvSeries = []

我试图从数据列表中得到的是meterScore,如果你向右滚动足够远,你就能看到它。所有这些数据都是一个更大的字典的一部分,我把它命名为resultOne,但我认为这并不重要。我只需要一些帮助,弄清楚如何引用和从字典中获取meterScore,这样我就可以打印出来,所以当我想看什么电影和他们的评分时,我就可以运行这个程序,它会帮我完成的。我不怎么使用字典,但是我用来获取烂番茄数据的库创建了它,因为这是一本很难参考的字典,所以任何帮助都是值得感谢的!我不明白的是,如果我尝试打印(resultOne.movies),它会说这不是一个属性或影响它的东西,即使当我把它放进一个可以打印出键和值的东西中,比如我在上面得到代码时,它清楚地显示它是一个键我也试着打印(resultOne.movies[meterScore]),但也没用。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/50668
 
918 次点击  
文章 [ 4 ]  |  最新文章 4 年前
sudohumberto
Reply   •   1 楼
sudohumberto    4 年前

为什么不试试这样的方法,从字典中的所有电影中提取每个meterScore:

listOfAllMeterScores = [ movie['meterScore'] for movie in movies ]
wjandrea
Reply   •   2 楼
wjandrea    4 年前

在那个片段中, movies 是一个包含dict的列表。因此索引该列表,然后索引dict:

movies[0]['meterScore']

如果 电影 可能包含多个项(或零),请对其进行迭代以获取 meterScore 学生:

meter_scores = [movie['meterScore'] for movie in movies]
oppressionslayer
Reply   •   3 楼
oppressionslayer    4 年前

试试这个:

 movies[0]['meterScore']
# 76

Josh Karpel
Reply   •   4 楼
Josh Karpel    4 年前

字典值由它们的键查找,使用 [] ,不是 . .

现在,诀窍是 movies 列表的关键点。所以你需要混合使用的两种索引 [] 字典索引,它是按关键字排列的,索引是按列表中的位置(从 0 ).

最终,您需要这样做:

score = resultOne['movies'][0]['meterScore']
                  ^         ^           ^    
                  |         |           |
     lookup in outer dict   |           |
                   first item in list   |
                                      lookup in inner dict