从编号为 0 到 100 的项目列表中创建编号 >= 60 的新项目列表

Creating a New List of Items With Numbers >= 60 from A List of Items Numbered 0 to 100

列表中的项目是电影标题,旁边有 0 到 100 的评分。这是其中的一部分...

[(u'The Girl on the Train', 43),
(u'Keeping Up With The Joneses', 19),
(u'Ouija: Origin of Evil', 82),
(u'Long Way North (Tout en haut du monde)', 98),
(u'The Whole Truth', 29),
(u'Come And Find Me', 67),
(u'LEGO Jurassic World: The Indominus Escape', None),
(u'My Father, Die', 78)...]

我想列出得分在 60 分或以上的电影。这是我尝试过但没有奏效的方法之一,(此代码将从 RottenTomatoes 提取一些数据网站,仅供参考)...

import requests

r = requests.get('https://www.rottentomatoes.com/api/private/v2.0/browse?page=1&limit=30&type=dvd-top-rentals&services=amazon%3Bamazon_prime%3Bfandango_now%3Bhbo_go%3Bitunes%3Bn    etflix_iw%3Bvudu&sortBy=popularity')


list = []
data = r.json()
for result in data["results"]:
    list.append((result["title"], result["tomatoScore"]))

list2 = [i for i in list if i >=60]

print list2

我还希望将我所有得分在 60 分或以上的电影片名截断为电影片名的文本,这样我就可以有一个程序将它们输入到网站的搜索字段中。所以如果你知道这是怎么做到的,那会让我在黑暗中多一些感觉。如果询问如何做到这一点要求太多,也许只是提示如何做到这一点。 谢谢!

改变

list2 = [i for i in list if i >= 60] 

list2 = [i for i in list if i[1] >= 60]. # You need to compare only ratings

并且不要调用您的列表 list。它将覆盖 python list.

好问题:

也许,这会对你有所帮助:

for i, j in list:
    if j >= 60:
        print j

这仅打印 60 以上的值。如果要将其附加到列表中,请使用:

for i, j in list:
    if j >= 60:
        list2.append(j)

希望有用!