Привет, Хабр!
Ваш интерес к новой книге «Секреты Python Pro» убедил нас, что рассказ о необычностях Python заслуживает продолжения. Сегодня предлагаем почитать небольшой туториал о создании кастомных (в тексте — собственных) классах исключений. У автора получилось интересно, сложно не согласиться с ним в том, что важнейшим достоинством исключения является полнота и ясность выдаваемого сообщения об ошибке. Часть кода из оригинала — в виде картинок.
Добро пожаловать под кат.
Создание собственных классов ошибок
В Python предусмотрена возможность создавать собственные классы исключений. Создавая такие классы, можно разнообразить дизайн классов в приложении. Собственный класс ошибок мог бы логировать ошибки, инспектировать объект. Это мы определяем, что делает класс исключений, хотя, обычно собственный класс едва ли сможет больше, чем просто отобразить сообщение.
Естественно, важен и сам тип ошибки, и мы часто создаем собственные типы ошибок, чтобы обозначить конкретную ситуацию, которая обычно не покрывается на уровне языка Python. Таким образом, пользователи класса, встретив такую ошибку, будут в точности знать, что происходит.
Эта статья состоит из двух частей. Сначала мы определим класс исключений сам по себе. Затем продемонстрируем, как можно интегрировать собственные классы исключений в наши программы на Python и покажем, как таким образом повысить удобство работы с теми классами, что мы проектируем.
Собственный класс исключений MyCustomError
При выдаче исключения требуются методы __init__()
и __str__()
.
При выдаче исключения мы уже создаем экземпляр исключения и в то же время выводим его на экран. Давайте детально разберем наш собственный класс исключений, показанный ниже.
В вышеприведенном классе MyCustomError есть два волшебных метода, __init__
и __str__
, автоматически вызываемых в процессе обработки исключений. Метод Init
вызывается при создании экземпляра, а метод str
– при выводе экземпляра на экран. Следовательно, при выдаче исключения два этих метода обычно вызываются сразу друг за другом. Оператор вызова исключения в Python переводит программу в состояние ошибки.
В списке аргументов метода __init__
есть *args
. Компонент *args
– это особый режим сопоставления с шаблоном, используемый в функциях и методах. Он позволяет передавать множественные аргументы, а переданные аргументы хранит в виде кортежа, но при этом позволяет вообще не передавать аргументов.
В нашем случае можно сказать, что, если конструктору MyCustomError
были переданы какие-либо аргументы, то мы берем первый переданный аргумент и присваиваем его атрибуту message
в объекте. Если ни одного аргумента передано не было, то атрибуту message
будет присвоено значение None
.
В первом примере исключение MyCustomError
вызывается без каких-либо аргументов, поэтому атрибуту message
этого объекта присваивается значение None
. Будет вызван метод str
, который выведет на экран сообщение ‘MyCustomError message has been raised’.
Исключение MyCustomError
выдается без каких-либо аргументов (скобки пусты). Иными словами, такая конструкция объекта выглядит нестандартно. Но это просто синтаксическая поддержка, оказываемая в Python при выдаче исключения.
Во втором примере MyCustomError
передается со строковым аргументом ‘We have a problem’. Он устанавливается в качестве атрибута message
у объекта и выводится на экран в виде сообщения об ошибке, когда выдается исключение.
Код для класса исключения MyCustomError находится здесь.
class MyCustomError(Exception):
def __init__(self, *args):
if args:
self.message = args[0]
else:
self.message = None
def __str__(self):
print('calling str')
if self.message:
return 'MyCustomError, {0} '.format(self.message)
else:
return 'MyCustomError has been raised'
# выдача MyCustomError
raise MyCustomError('We have a problem')
Класс CustomIntFloatDic
Создаем собственный словарь, в качестве значений которого могут использоваться только целые числа и числа с плавающей точкой.
Пойдем дальше и продемонстрируем, как с легкостью и пользой внедрять классы ошибок в наши собственные программы. Для начала предложу слегка надуманный пример. В этом вымышленном примере я создам собственный словарь, который может принимать в качестве значений только целые числа или числа с плавающей точкой.
Если пользователь попытается задать в качестве значения в этом словаре любой другой тип данных, то будет выдано исключение. Это исключение сообщит пользователю полезную информацию о том, как следует использовать данный словарь. В нашем случае это сообщение прямо информирует пользователя, что в качестве значений в данном словаре могут задаваться только целые числа или числа с плавающей точкой.
Создавая собственный словарь, нужно учитывать, что в нем есть два места, где в словарь могут добавляться значения. Во-первых, это может происходить в методе init при создании объекта (на данном этапе объекту уже могут быть присвоены ключи и значения), а во-вторых — при установке ключей и значений прямо в словаре. В обоих этих местах требуется написать код, гарантирующий, что значение может относиться только к типу int
или float
.
Для начала определю класс CustomIntFloatDict, наследующий от встроенного класса dict
. dict
передается в списке аргументов, которые заключены в скобки и следуют за именем класса CustomIntFloatDict
.
Если создан экземпляр класса CustomIntFloatDict
, причем, параметрам ключа и значения не передано никаких аргументов, то они будут установлены в None
. Выражение if
интерпретируется так: если или ключ равен None
, или значение равно None
, то с объектом будет вызван метод get_dict()
, который вернет атрибут empty_dict
; такой атрибут у объекта указывает на пустой список. Помните, что атрибуты класса доступны у всех экземпляров класса.
Назначение этого класса — позволить пользователю передать список или кортеж с ключами и значениями внутри. Если пользователь вводит список или кортеж в поисках ключей и значений, то два эти перебираемых множества будут сцеплены при помощи функции zip
языка Python. Подцепленная переменная, указывающая на объект zip
, поддается перебору, а кортежи поддаются распаковке. Перебирая кортежи, я проверяю, является ли val экземпляром класса int
или float
. Если val
не относится ни к одному из этих классов, я выдаю собственное исключение IntFloatValueError
и передаю ему val в качестве аргумента.
Класс исключений IntFloatValueError
При выдаче исключения IntFloatValueError
мы создаем экземпляр класса IntFloatValueError
и одновременно выводим его на экран. Это означает, что будут вызваны волшебные методы init
и str
.
Значение, спровоцировавшее выдаваемое исключение, устанавливается в качестве атрибута value
, сопровождающего класс IntFloatValueError
. При вызове волшебного метода str пользователь получает сообщение об ошибке, информирующее, что значение init
в CustomIntFloatDict
является невалидным. Пользователь знает, что делать для исправления этой ошибки.
Классы исключений IntFloatValueError
и KeyValueConstructError
Если ни одно исключение не выдано, то есть, все val
из сцепленного объекта относятся к типам int
или float
, то они будут установлены при помощи __setitem__()
, и за нас все сделает метод из родительского класса dict
, как показано ниже.
Класс KeyValueConstructError
Что произойдет, если пользователь введет тип, не являющийся списком или кортежем с ключами и значениями?
Опять же, этот пример немного искусственный, но с его помощью удобно показать, как можно использовать собственные классы исключений.
Если пользователь не укажет ключи и значения как список или кортеж, то будет выдано исключение KeyValueConstructError
. Цель этого исключения – проинформировать пользователя, что для записи ключей и значений в объект CustomIntFloatDict
, список или кортеж должен быть указан в конструкторе init
класса CustomIntFloatDict
.
В вышеприведенном примере, в качестве второго аргумента конструктору init
было передано множество, и из-за этого было выдано исключение KeyValueConstructError
. Польза выведенного сообщения об ошибке в том, что отображаемое сообщение об ошибке информирует пользователя: вносимые ключи и значения должны сообщаться в качестве либо списка, либо кортежа.
Опять же, когда выдано исключение, создается экземпляр KeyValueConstructError, и при этом ключ и значения передаются в качестве аргументов конструктору KeyValueConstructError. Они устанавливаются в качестве значений атрибутов key и value у KeyValueConstructError и используются в методе __str__ для генерации информативного сообщения об ошибке при выводе сообщения на экран.
Далее я даже включаю типы данных, присущие объектам, добавленным к конструктору init
– делаю это для большей ясности.
Установка ключа и значения в CustomIntFloatDict
CustomIntFloatDict
наследует от dict
. Это означает, что он будет функционировать в точности как словарь, везде за исключением тех мест, которые мы выберем для точечного изменения его поведения.
__setitem__
— это волшебный метод, вызываемый при установке ключа и значения в словаре. В нашей реализации setitem
мы проверяем, чтобы значение относилось к типу int
или float
, и только после успешной проверки оно может быть установлено в словаре. Если проверка не пройдена, то можно еще раз воспользоваться классом исключения IntFloatValueError
. Здесь можно убедиться, что, попытавшись задать строку ‘bad_value’
в качестве значения в словаре test_4
, мы получим исключение.
Весь код к этому руководству показан ниже и выложен на Github.
# Создаем словарь, значениями которого могут служить только числа типов int и float
class IntFloatValueError(Exception):
def __init__(self, value):
self.value = value
def __str__(self):
return '{} is invalid input, CustomIntFloatDict can only accept '
'integers and floats as its values'.format(self.value)
class KeyValueContructError(Exception):
def __init__(self, key, value):
self.key = key
self.value = value
def __str__(self):
return 'keys and values need to be passed as either list or tuple' + 'n' +
' {} is of type: '.format(self.key) + str(type(self.key)) + 'n' +
' {} is of type: '.format(self.value) + str(type(self.value))
class CustomIntFloatDict(dict):
empty_dict = {}
def __init__(self, key=None, value=None):
if key is None or value is None:
self.get_dict()
elif not isinstance(key, (tuple, list,)) or not isinstance(value, (tuple, list)):
raise KeyValueContructError(key, value)
else:
zipped = zip(key, value)
for k, val in zipped:
if not isinstance(val, (int, float)):
raise IntFloatValueError(val)
dict.__setitem__(self, k, val)
def get_dict(self):
return self.empty_dict
def __setitem__(self, key, value):
if not isinstance(value, (int, float)):
raise IntFloatValueError(value)
return dict.__setitem__(self, key, value)
# тестирование
# test_1 = CustomIntFloatDict()
# print(test_1)
# test_2 = CustomIntFloatDict({'a', 'b'}, [1, 2])
# print(test_2)
# test_3 = CustomIntFloatDict(('x', 'y', 'z'), (10, 'twenty', 30))
# print(test_3)
# test_4 = CustomIntFloatDict(('x', 'y', 'z'), (10, 20, 30))
# print(test_4)
# test_4['r'] = 1.3
# print(test_4)
# test_4['key'] = 'bad_value'
Заключение
Если создавать собственные исключения, то работать с классом становится гораздо удобнее. В классе исключения должны быть волшебные методы init
и str
, автоматически вызываемые в процессе обработки исключений. Только от вас зависит, что именно будет делать ваш собственный класс исключений. Среди показанных методов – такие, что отвечают за инспектирование объекта и вывод на экран информативного сообщения об ошибке.
Как бы то ни было, классы исключений значительно упрощают обработку всех возникающих ошибок!
Задание по окружающему миру для 4 класса 2. Представьте вместе с друзьями, что вы учёные и отправляетесь в научную экспедицию в пустыню. Напишите рассказ об этом.
2 ответа:
1
0
Мы с друзьями решили отправится в научную экспедицию в пустыню.
Пустыня оказалась точно такой, как мы ее и представляли — море песка, который под действием ветра образует огромные дюны — барханы, яркое жаркое солнце и почти полное отсутствие растительности.
Мы хотели узнать, какие растения и животные все-таки живут в пустыне, ведь не может она быть совсем безжизненной.
Очень скоро мы убедились, что для перехода по пустыни отлично приспособлены верблюды. Эти животные имеют не копыта, а огромные мозоли, которые не позволяют верблюду проваливаться в песок. В горбах верблюда содержится много жира, который животное может перерабатывать в воду.
Редко где в пустыни можно встретить растения. Одинокие сухие саксаулы расцветают только весной, по песку катаются перекати-поле, да жесткая верблюжья колючка растет в некоторых местах.
Животные пустыни днем прячутся в норах или закапываются в песок. Ночами они выходят добывать себе пищу. Это некоторые грызуны, змеи, ящерицы.
Редкие оазисы, где можно найти воду являются настоящими жемчужинами и уголком жизни в пустыни. Там мы отдыхали.
Из экспедиции мы привезли образцы пустынной флоры и фотографии пустынных животных.
1
0
Научная экспедиция в пустыню для 4 класса
Песок, горячий песок и горячие камни — вот что такое пустыня днем. Солнце стоит очень высоко над головой и безжалостно печет. Поэтому в пустыне обязательно носить шляпы и очки.
Растительный мир пустыни нас разочаровал — редкие оазисы, саксаулы, верблюжья колючка, да на каменистых участках какие-то сухонькие злаки.
Животный мир также не поразил разнообразием. То и дело попадались странные следы змей, цепочки следов ящериц, и более мелкие цепочки каких-то грызунов. Иногда в небе мелькала хищная птица. Впрочем ночью пустыня оживала и наполнялась звуками. Что-то стрекотало, что-то пищало, что-то повизгивало и даже похрюкивало.
Вывод: днем в пустыне все живое прячется от солнца, и ведет преимущественно ночной образ жизни.
Читайте также
Попробую придумать такой рассказ для 2 класса:
Миша очень любил сладкое и всегда с большим удовольствием кушал конфеты, шоколадки, торты, пирожные и прочие сладости.
В тот день родители ждали гостей и Миша знал, что в шкафу на кухне хранится замечательный, просто чудесный торт. Он несколько раз подходил к шкафу, открывал его и любовался тортом, украшенным различными цветочками. Мише очень хотелось попробовать торт, но мама строго запретила ему это делать, ведь торт предназначался гостям.
Однако время шло, а аппетит у Миши становился все сильнее. И вот он решил, что если отрезать совсем маленький кусочек, то никто не заметит. Он достал торт, отрезал совсем крошечный кусочек и с наслаждением его съел.
Раз попробовав торт Миша не смог остановиться и съел все три килограмма торта.
Когда пришли гости и родители хотели достать торт, оказалось, что от него осталась только пустая коробочка. Мише было очень, стыдно, он был наказан, и вдобавок у него сильно заболел живот.
Сидя в комнате весь в слезах, мальчик раскаивался в своем поступке и думал о том, что прожитое, что пролитое — не воротишь.
Одним из первых в весеннем цветнике расцветает крокус. В это время это небольшой цветок с яркими цветками самой разной расцветки. На пустых грядках он смотрится очень красиво. Его нежные и широкие лепестки раскрываются навстречу солнцу, открывая золотую серединку.
С крокусом люди всегда связывали много преданий и поверий. Так древние греки считали, что крокус появился на месте гибели юноши Крока, в которого на соревнованиях случайно попали диском. Из его крови и выросли эти маленькие, но красивые цветы.
Индийцы же считают крокус своим цветком, так как когда-то его семена принес на землю один из небожителей.
Опишем по плану рыбу под названием Сазан.
- Название рыбы — Сазан, это рыба одомашнена человеком, и ее другое название Карп.
- Сазан — речная рыба средних размеров, хотя отдельные экземпляры могут достигать внушительных размеров. Известны случаи, когда вылавливали сазанов весом свыше 20 килограмм. Я сама была свидетельницей как вытащили сазана в пуд весом и это была очень внушительная рыба.
- Тело у сазана толстое, слегка удлиненное.
- Расцветка скорее золотистая, по спине черная. но может сильно отличатся для рыб живущих в разных водоемах.
- Отличительной особенностью сазана оказывается большая широкая голова, на которой имеются небольшие усики.
Санкт-Петербург нельзя назвать старинным городом, он возник сравнительно недавно, но поскольку этот город долгое время был столицей России, то в нем множество уникальных, очень красивых зданий, дворцов, площадей, много исторических мест, посмотреть на которые интересно и познавательно.
Вот например знаменитое Адмиралтейство, шпиль которого увенчан маленьким корабликом, давно ставшим символом этого города. Несомненно большое впечатление производит Петропавловская крепость на острове в устье Невы:
Или например Зимний дворец, в котором сейчас располагается музей. Вход в него украшает знаменитая Александрийская колонна.
В Санкт-Петербурге поражает обилие памятников, очень много здесь памятников Петру 1, основателю города. Самым знаменитым из них является Медный всадник, описанный во многих литературных произведениях.
Но есть и такие памятники Петру 1 как памятник в Петропавловской крепости, памятник Петру-плотнику, памятник Петру в Михайловском замке.
На предстоящее лето у меня просто огромные планы.
Прежде всего я хочу хорошо отдохнуть, а потому обязательно поеду с родителями на какой-нибудь курорт, может быть на море, может быть на озера. Там я буду много купаться и загорать и приду в школу черная, как негр. Я буду проводить много времени на природе, ведь лето оно такое короткое и за ним обязательно снова придет осень.
А осенью я снова пойду в школу. И я хочу успеть как следует соскучиться по занятиям в школе за лето. Чтобы учиться было интересно и увлекательно. Ведь я хочу узнать так много нового!
Мне очень понравилось участвовать в олимпиадах и пусть пока я не побеждала, но на ближайший год я точно планирую занять призовое место в олимпиаде по литературе или русскому языку.
Я хоте бы больше узнать об истории нашей страны, и думаю в следующем классе мне это удастся.
В БЛОГАХ…
еще…
еще…
Замечательная работа у Вас получилась, Татьяна Владимировна! Спасибо за такой яр…
Спасибо, Наталья Александровна, за внимание к работе! Мне тоже произведения А.Га…
Светлана Николаевна, очень актуальный материал! Так устаёшь пробираться к смыслу…
Светлана Николаевна, спасибо за нужный материал, в работе пригодится!
Елена Владимировна, спасибо за чудесную викторину! Сегодня уже готовилась к коля…
Лидия Петровна, какие интересные вопросы Вы подобрали для тренажёра! Очень понра…
Категория Окружающий мир 4 класс содержит материалов: 505
Страницы: 1 2 3 … 25 26 »
Итоговый тест по окружающему миру за 2 четверть
| C помощью предлагаемого теста удобно проводить контроль, который даёт возможность определить, насколько ученик справился с требованиями, предъявляемыми школьной программой.Тест состоит из заданий разного уровня сложности.Учащемуся необходимо выбрать один или несколько ответов из предложенных вариантов. |
№80108 | | 35Kb |
Интерактивный тест по теме «Полезные ископаемые»
| Предлагаемая тестовая работа предназначена для контроля знаний учеников 4 класса по курсу «Естествозние» по ГОСО РК. Цель: проверить знания учащихся по теме. Учащимся необходимо выбрать один или несколько ответов из предложенных вариантов. |
№80055 | | 36Kb |
Интерактивный тест по теме «Земля-кормилица»
| Данный ресурс можно использовать дома и на уроках окружающего мира с целью закрепления и самоконтроля по теме «Земля-кормилица». Этот тест можно использовать без подключения к Интернету. Тест интерактивный, и учителю не надо проверять результат, программа сама за Вас проверит и выдаст процент правильно решенных заданий. |
№80044 | | 34Kb |
Интерактивный тест «Знаешь ли ты Воронежский край»
| Данный ресурс можно использовать дома и на уроках окружающего мира и краеведения с целью закрепления и самоконтроля по теме «Наш край». Этот тест можно использовать без подключения к Интернету. Тест интерактивный, и учителю не надо проверять результат, программа сама за Вас проверит и выдаст процент правильно решенных заданий. |
№79975 | | 36Kb |
Тест-тренажер по теме «Узнай животных и растения»
| Тест-тренажер по окружающему миру для 4 класса по теме «Узнай животных и растения», УМК «Школа России». Презентация содержит 10 вопросов на соответствие. Тест создан на основе шаблона А.Н.Комаровского в программе Microsoft Office PowerPoint 2010. |
Интерактивный тест по теме «Природные зоны России»
| Тест по окружающему миру для 4 класса поможет быстро провести опрос и оценить работу учащегося по теме «Природные зоны России», а также поможет подготовить учащихся к ВПР. Работа выполнена на шаблоне А.А. Баженова. Данную работу предлагаю учителям начальных классов. |
Конспект и презентация к уроку по теме «Водоёмы нашего края»
| Материала представлен конспектом урока с презентацией по предмету «Окружающий мир» (4 класс), тема «Водоёмы нашего края». Рекомендовано для учителей начальных классов. На уроке используются фронтальная, групповая и парная формы организации познавательной деятельности. |
Интерактивный кроссворд «В тундре»
| Данный ресурс может быть полезен учителям начальных классов для использования на уроке окружающего мира по теме «Природные зоны. Тундра». Ученикам будет интересно повторить материал в игровой форме. |
№78790 | | 5.5Mb |
Презентация «По морям, по волнам» по теме «Тихий океан»
| Мир океанов богат и разнообразен. И в каждом есть моря. Узнать о морях Тихого океана поможет презентация «По морям, по волнам». Ученики смогут увидеть иллюстративный материал и прочитать интересные сведения, которых нет в учебнике. |
Наглядно-демонстрационный материал «Живут на свете кошки»
| Данная презентация позволит учителю начальных классов расширить представления учащихся о семействе кошачьих. Переход от одной группы животных к другой осуществляется по стрелке. Работа выполнена с применением ТП «Интерактивная лента» |
№78585 | | 4.3Mb |
Наглядно-демонстрационный материал «Стоп-кадр. Красный волк»
| Данный материал поможет учителю начальных классов расширить представления учащихся об этом уникальном животном. Презентацию можно использовать как на уроке, так и во внеурочной деятельности. В презентации использован ТП «Экран». Для перехода на новый слайд необходимо кликнуть на маленькую иконку. |
№78449 | | 8.8Mb |
Тест по теме «Организм человека»
| Данный материал предназначен для учителей начальных классов. Его можно использовать на уроках окружающего мира, на занятиях кружка, факультатива, во внеклассной работе. Цель: проверить и скорректировать знания учащихся по теме. |
№78398 | | 0.2Mb |
Что может быть лучше, чем провести выходные за просмотром интересного кино или сериала? Особенно в холодное время года? Особенно, если есть что посмотреть? Правильно, ничего. Так что устраивайтесь поудобнее и выбирайте любой фильм или сериал из этой подборки. Скучно не будет.
Вас ждут: новейший боевик с Райаном Рейнольдсом в роли вора экстра-класса, суровый вестерн с грабителями почтовых дилижансов, рассказ о «Соколином Глазе», самом нераскрытом участнике Мстителей, и многое другое.
Выбирайте и смотрите!
1. Красное уведомление (Red Notice)
Жанр: боевик, комедия, криминал
Год выпуска: 2021
Зрительский рейтинг: ⭐️ 6.5 (IMDb), 6.4 (КиноПоиск)
Страна: США
Режиссёр: Роусон Маршалл Тёрбер
В ролях: Дуэйн Джонсон, Райан Рейнольдс, Галь Гадот, Риту Эрийа, Крис Диамантополос
О чем: самый разыскиваемый вор в мире и агент спецслужб вместе должны найти бесценный артефакт.
Египетский миллиардер назначает награду в 300 млн долларов тому, кто принесёт ему три золотых яйца царицы Клеопатры. Агент ФБР использует это предложение в качестве возможности поймать наконец самого разыскиваемого вора, который наверняка попытается найти и украсть бесценные артефакты.
Но под давлением обстоятельств законнику и вору придётся не только объединиться в поисках драгоценных яиц, но и вести хитроумную игру против ещё одного разыскиваемого Интерполом «любителя» предметов старины по прозвищу Ладья.
Смотреть фильм в Netflix
2. Тем больнее падать (The Harder They Fall)
Жанр: вестерн, криминал
Год выпуска: 2021
Зрительский рейтинг: ⭐️ 6.6 (IMDb), 5.8 (КиноПоиск)
Страна: США
Режиссёр: Джеймс Сэмюэл
В ролях: Джонатан Мэйджерс, Идрис Эльба, Реджина Кинг, Зази Битц, Лакит Стэнфилд
О чем: отличный вестерн, рассказывающий о истории мести за убитых родителей.
Двадцать лет назад жестокий бандит убивает родителей маленького мальчика. Мальчик вырастает и сам становится преступником с жаждой мести за своих родных.
После того, как герой убивает одного из давних врагов, он узнает что убийца родителей скоро окажется на свободе. Настало время собрать свою банду и уничтожить мерзавца.
Смотреть фильм в Netflix
3. Тик-так… БУМ! (tick, tick…BOOM!)
Жанр: мюзикл, драма, биография
Год выпуска: 2021
Зрительский рейтинг: ⭐️ 7.7 (IMDb), 8.1 (КиноПоиск)
Страна: США
Режиссёр: Лин-Мануэль Миранда
В ролях: Эндрю Гарфилд, Александра Шипп, Робин де Хесус, Ванесса Энн Хадженс, Джошуа Генри
О чем: мюзикл о композиторе, который испытывает муки творчества.
Молодой парень работает официантом в кафе и параллельно пишет собственный мюзикл, рассчитывая покорить с ним Бродвей. Парню во что бы то ни стало нужно создать хит, чтобы вырваться из нищеты, потому что в его жизни всё плохо.
Его девушка Сюзан устала ждать, пока бойфренд добьется успеха, а лучший друг оставил мечты и устроился на престижную работу в рекламном агентстве. Герою скоро исполнится 30 лет и он начинает переживать, что впустую потратил все эти годы.
Смотреть фильм в Netflix
4. Соколиный Глаз (Hawkeye)
Жанр: фантастика, боевик, драма, криминал, детектив, приключения
Зрительский рейтинг: ⭐️ 8.10 (IMDb), 7.5 (КиноПоиск)
Страна: США
В ролях: Джереми Реннер, Хейли Стайнфелд, Тони Далтон, Вера Фармига, Фра Фи
О чем: сериал о самом недооценённом участнике супергеройской команды Мстителей.
Соколиный Глаз готов уйти на покой, но сперва он должен найти себе подходящую замену, поэтому начинает тренировать нового Соколиного Глаза — молодую Кейт Бишоп.
Бартон должен научить Кейт, как быть супергероем без суперспособностей и спасать людей, полагаясь исключительно на свои навыки, смекалку и меткость.
Искать сериал в Google
5. Шершни (Yellowjackets)
Жанр: ужасы, триллер, драма
Зрительский рейтинг: ⭐️ 7.9 (IMDb), 6.6 (КиноПоиск)
Страна: США
В ролях: Мелани Лински, Софи Тэтчер, Тони Сайпресс, Элла Пернелл, Сэмми Ханратти
О чем: группа школьников пытается выжить в лесу после крушения самолета
Женская школьная команда по футболу терпит крушение на самолёте в лесах Онтарио. Они выживают, но оказываются отрезанными от цивилизации – на километры вокруг только непроходимые следа.
Пытаясь выжить, герои теряют человеческий облик. С них слетает налёт цивилизации и выжившие превращаются в разрозненные кланы каннибалов.
Смотреть сериал в Амедиатеке
6. Ковбой Бибоп (Cowboy Bebop)
Жанр: фантастика, боевик, криминал, приключения, драма
Зрительский рейтинг: ⭐️ 6.7 (IMDb), 6.4 (КиноПоиск)
Страна: США, Япония
В ролях: Даниэлла Пинеда, Елена Сатине, Джон Чо, Мустафа Жакир
О чем: двое охотников за головами ловят преступников по всей галактике.
В 2071 году профессия охотника за головами становится особо востребованной, так что появляются космические ковбои. Эти люди путешествуют по обитаемому космосу в поисках преступников, за поимку которых живыми назначена награда.
Сериал рассказывает о приключении таких персонажей, экипажа межпланетного корабля «Бибоп», на котором судьба сводит четырёх человек и одну собаку.
Смотреть сериал в Netflix
А вот ещё интересные подборки с фильмами, если ничего не выбрали:
▸ 10 культовых сериалов 90-х, о которых вы могли даже не знать. Нужно срочно пересмотреть
▸ 6 совсем новых фильмов, прямиком из кинотеатров. Уже можно смотреть дома
▸ 6 фильмов про настоящих мужиков и мужские поступки. Сидите дома и смотрите
(27 голосов, общий рейтинг: 4.33 из 5)
? Хочешь больше? Подпишись на наш Telegram.
… и не забывай читать наш Facebook и Twitter
?
iPhones.ru
Что может быть лучше, чем провести выходные за просмотром интересного кино или сериала? Особенно в холодное время года? Особенно, если есть что посмотреть? Правильно, ничего. Так что устраивайтесь поудобнее и выбирайте любой фильм или сериал из этой подборки. Скучно не будет. Вас ждут: новейший боевик с Райаном Рейнольдсом в роли вора экстра-класса, суровый вестерн с…