Как сортировать жанр в кортежах и массивах Python
Я работаю с API Кинопоиска и не понимаю, как мне сортировать фильмы по жанрам, в выводе у меня это (отформатировано для наглядности):
FilmSearchByFiltersResponse(
total=400,
totalPages=20,
items=[
FoundFilm(
kinopoisk_id=1252447,
imdb_id='tt9257638',
name_ru='Лорды раздевалки',
name_en=None,
name_original='Lords of the Lockerroom',
countries=[
Country(country='США')
],
genres=[
Genre(genre='спорт'),
Genre(genre='для взрослых')
],
rating_kinopoisk=9.4,
rating_imdb=9.3,
year=1999,
type=<FilmType.VIDEO: 'VIDEO'>,
film_length=None,
poster_url='https://kinopoiskapiunofficial.tech/images/posters/kp/1252447.jpg',
poster_url_preview='https://kinopoiskapiunofficial.tech/images/posters/kp_small/1252447.jpg'
),
FoundFilm(
kinopoisk_id=1043658,
imdb_id='tt4202274',
name_ru='Шоу Грязного Фрэнка',
name_en=None,
name_original='The Filthy Frank Show',
countries=[
Country(country='США'),
Country(country='Австралия'),
Country(country='Япония')
],
genres=[
Genre(genre='фэнтези'),
Genre(genre='комедия'),
Genre(genre='музыка'),
Genre(genre='короткометражка')
],
rating_kinopoisk=9.3,
rating_imdb=9.4,
year=2011,
type=<FilmType.TV_SERIES: 'TV_SERIES'>,
film_length=None,
poster_url='https://kinopoiskapiunofficial.tech/images/posters/kp/1043658.jpg',
poster_url_preview='https://kinopoiskapiunofficial.tech/images/posters/kp_small/1043658.jpg'
)
...
Мне нужно, чтобы выводились фильмы с Genre = 'боевик', независимо от других жанров в массиве. Вот мой код:
from kinopoisk_unofficial.kinopoisk_api_client import KinopoiskApiClient
from kinopoisk_unofficial.model.filter_country import FilterCountry
from kinopoisk_unofficial.model.filter_order import FilterOrder
from kinopoisk_unofficial.request.films.film_search_by_filters_request import FilmSearchByFiltersRequest
from kinopoisk_unofficial.request.films.filters_request import FiltersRequest
api_client = KinopoiskApiClient("api token")#здесь токен
request = FilmSearchByFiltersRequest()
response = api_client.films.send_film_search_by_filters_request(request)
print(response)
Ответы (1 шт):
Автор решения: n1tr0xs
→ Ссылка
По идее так должно сработать
genre = response.items[0].genres[0].__class__(genre='боевик') # топорно, но должно сработать
for film in response.items:
if genre in film.genres:
print(film)