如何从列表中获取电影评分?

问题描述

我正在使用 IMDbPY 并且我想输出来自特定国家/地区的评分。但现在我正在获得所有国家/地区的所有评级。

这是我的代码

from imdb import IMDb

ia = IMDb()
theMatrix = ia.get_movie_parents_guide('0133093')
print(theMatrix['data']['certification'])

电流输出

[' Argentina:13',' Australia:M',' Belgium:KT/EA',' Brazil:12',' (original rating)',' (re-rating)',' Brazil:14',' (2002,TV rating)',' Canada:14A',' (Alberta/British Columbia)',' Canada:PA',' (Manitoba)',' Canada:14',' (Nova Scotia)',' Canada:AA',' (Ontario)',' Canada:13+',' (Quebec)',' Denmark:15',' Finland:K-16',' France:Tous publics avec avertissement',' Germany:16',' Greece:K-8',' Hong Kong:IIB',' Hungary:16',' Iceland:16',' India:UA',' India:A',' (1999,original rating)',' Ireland:15',' (theatrical)',' Ireland:18',' (video)',' Israel:PG',' Italy:T',' Japan:PG-12',' Japan:G',' (2019)',' Luxembourg:12',' Malaysia:18SG',' Mexico:B',' Netherlands:16',' Netherlands:12',' New Zealand:M',' Nigeria:PG',' norway:15',' Peru:14',' Philippines:PG-13',' Portugal:M/12',' Portugal:M/16',' (Netflix rating)',' Russia:16+',' Saudi arabia:PG',' Singapore:PG',' Singapore:PG13',' South Africa:10',' South Korea:12',' Spain:18',' Sweden:15',' Switzerland:12',' (canton of Geneva)',' (canton of Vaud)',' Taiwan:PG-12',' Thailand:G',' United Kingdom:15',' United States:R',' (certificate #36569)',' Ukraine:16']

输入:

Argentina
Brazil
United States

所需的输出

Argentina:13
Brazil:12
United States:R

解决方法

这就是您要找的:

from imdb import IMDb
ia = IMDb()
theMatrix = ia.get_movie_parents_guide('0133093')

inp=["Argentina","Brazil","United States"]

print([c[1:] for c in theMatrix['data']['certification'] if c.split(":")[0][1:] in inp])

这是内联的for循环,难懂但好用。无论如何都可以使用正常循环,如下所示:

inp=["Argentina","United States"]

for c in theMatrix['data']['certification']:
    if c.split(":")[0][1:] in inp:
        print(c[1:])
,

这就是我一直在寻找的,谢谢。

从 imdb 导入 IMDb

ia = IMDb()
theMatrix = ia.get_movie_parents_guide('0133093')
ratings = theMatrix['data']['certification']
country = " " + "Brazil"
r = [s for s in ratings if s.startswith(country)]
theRating = r[0]
print (theRating.split(":",1)[1])

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...