ここには奇妙なビットがあります...リスト内の複数のリスト内の項目を確認してください
基本的に私はその中のリストを持つリストを持っています。
ratings = [
# ''' 1 star '''
["Strangers on a Train", "Anchorman", "Saw", "Suicide Squad"],
# ''' 2 star '''
["Shutter Island", "Shaun of the Dead", "Scream", "Indiana Jones"],
# ''' 3 star'''
["Goodfellas", "Mr Bean", "The Ring", "Dark Knight"],
# ''' 4 star'''
["Scarface", "Hot Fuzz", "Nosferatu", "Die Hard"],
# ''' 5 star'''
["Pulp Fiction", "Airplane", "The Omen", "Deadpool"]
]
は明らかにこれは映画のリストであり、この文脈はかなり役に立たないですが、リスト内で、映画5のうち評価のそれぞれを与える5つのリストです。
def rating():
if userInfo[7] == "1":
return range(5)
elif userInfo[7] == "2":
return range(2, 5)
elif userInfo[7] == "3":
return range(3, 5)
elif userInfo[7] == "4":
return range(4, 5)
else:
return range(5, 5)
ここでは、見たいと思うフィルムの最低定格に応じて本質的に範囲が返される関数です。それらの最小の評価は4でそう言って、彼らは唯一の評価4と5のフィルムを見ることができます
は、彼らが映画
movies = ["Strangers on a Train", "Anchorman", "Shutter Island",
"Shaun of the Dead", "Goodfellas", "Mr Bean",
"Scarface", "Hot Fuzz", "Pulp Fiction", "Airplane"]
今私がいるこのリストからすべての動画を削除したいのリストを持っていると言います評価4以上ではありません。
私は
new = []
for item in movies:
if item not in in ratings[rating()]:
new.append(item)
を試みたが、それは整数にする必要があるとして、私は大きなリスト内の複数のリストを検索する範囲を使用することはできませんので、これは動作しません。
私はこのような小さな問題のための巨大なポストだと私は理解していますが、私の脳は死にかけており、私はこれを何時間もやろうとしていました。
スライシングを使用するだけです: 'ratings [3:]'はあなたにすべての映画に4以上の評価を与えます – acushner