Проект нами кортеж: РИА Новости — события в Москве, России и мире сегодня: темы дня, фото, видео, инфографика, радио

Содержание

Горшки и боги — Авторевю

Сначала появляются «бревна». Это стальные цилиндрические болванки, из которых вырежут коленчатые валы. Затем их уложат в постель алюминиевого остова, зажмут клещами шатунов — и четыре турбокомпрессора превратят все это в царь-двигатель V12. Я отправился в НАМИ, чтобы выяснить, кто и как разработал первый российский бензиновый 12-цилиндровый мотор, из чего он сделан и зачем его хотят «порезать» на маленькие двух- и трехцилиндровые двигатели.

В фойе Московского автомобильного и автомоторного института гос­тей встречает парадная шеренга самых экзотических оте­чественных моторов: аксиальные пяти- и семицилиндровые двигатели AR-5 и AR-7, траверсно-балансирный дизель ­ТБ-48… За сто лет в НАМИ опробовали, кажется, все возможные конструкции ДВС, но легковых бензиновых моторов V12, в отличие от авиационных или дизельных, среди них еще не было. Таких двигателей ни в СССР, ни в России до сих пор не выпускали.

— Опыта создания дизелей V12 в России значительно больше, — объясняет руководитель Центра «Энергоустановки» НАМИ Алексей Теренченко. — К тому же в советское время не было необходимости и возможности для создания подобных бензиновых моторов, это танки требовали большой мощности, а среди автомобилей даже бронированные ЗИЛы обходились 315-сильными двигателями V8, тем более что именно по такой схеме выпускались моторы и на ГАЗе, и на ЗИЛе.

В обновленном литейном цехе НАМИ — новенькие литейные машины с технологией «антигравитационного» литья, когда расплавленный металл подается в форму снизу под небольшим давлением

Почему теперь возникла потребность в двенадцатицилиндровом двигателе, ни для кого уже не секрет: это мотор для флагманского лимузина проекта Кортеж, и он должен быть самым мощным, самым прогрессивным и самым прес­тижным. Паспортные данные впечатляют: рабочий объем — 6,6 л, непосредственный впрыск, система изменения фаз газораспределения, четыре турбокомпрессора с давлением 2,3 бара, максимальная мощность — 830 л.

с. (при 5500 об/мин), а максимальный крутящий момент — 1320 Нм в диапазоне от 2200 до 4500 ­об/­мин.­

Но официально проект называется ЕМП (Единая модульная платформа), и кроме «автомобиля высшего класса», как в НАМИ называют флагманский лимузин, программа включает еще и бизнес-седаны, кроссоверы и минивэны, поэтому с самого начала Кортеж преду­с­матривал также моторы V8 и рядные «четверки».

Интересно, что в первоначальных набросках проекта Кортеж для лимузинов рассматривалась возможность использовать двигатели на основе дизеля RED A03 V12, который в Германии разработала фирма гоночного моториста и нашего бывшего соотечественника Владимира Райхлина. Однако этот изначально авиационный двигатель с развалом блока 72º осложнял компоновку моторного отсека. От идеи такого донорства отказались, и примерно два года назад мотористы ­НАМИ начали работу почти с чистого листа.

В 2013 году был объявлен конкурс эскизных проектов на двигатель V12, в котором участ­вовали компании FEV, AVL, Ricardo и Porsche Engineering.

Но в итоге фирме Porsche Engineering отдали только проект разработки мотора V8 — самого массового в линейке. А остальные двигатели в НАМИ взялись проектировать самостоятельно.

В условиях опытного производства изготовление одного коленвала занимает две недели

Конструктор Игорь Анохин работает в НАМИ с 1987 года, он участвовал в создании многих моторов, включая как раз те самые аксиальные ­AR-5 и AR-7, а теперь руководит разработкой двигателя V12. C базовой «восьмеркой» флагманский мотор роднит общий рабочий процесс — то есть цилиндро-поршневая группа, газораспределительный механизм, форсунки и свечи. Такой модуль будет использован для всех двигателей проекта ЕМП.

В этом моторы НАМИ похожи на большинство современных модульных двигателей с унифицированной геометрией цилиндра. Но если BMW, VW AG, Daimler, Volvo и Jaguar Land Rover приняли за основу цилиндр объемом 500 см³, то в НАМИ выбрали чуть более крупный модуль: с диаметром цилиндра 88 мм, ходом поршня 90 мм, рабочим объемом 547,4 см³ и степенью сжатия 9,5:1. Литраж — «с хвостиком»: 6,6 л на двенадцать цилиндров, 4,4 л — на восемь, 2,2 л — на четыре.

Базовая «восьмерка» получилась классической: с 90-градусным углом развала блока и двумя турбокомпрессорами на внешних его сторонах. Однако это полностью алюминиевый двигатель с сухими чугунными тонкостенными гильзами, в котором непосредственный впрыск топлива, управляемые фазы газораспределения и раздельная по цилиндрам система охлаждения. В Германии на сегодня собрано 15 таких предсерийных моторов, в России — еще пять, и все они уже проходят испытания.

Турбокомпрессоры подмосковной компании Турботехника — это первый российский опыт создания системы наддува для бензиновых моторов

Благодаря тому, что в базовом двигателе удалось добиться высокого среднего эффективного давления (25 бар), мотор 4.4 по удельной мощности превосходит, например, «восьмерку» Porsche 4.8 на кроссовере Cayenne Turbo S: 136 л.с./л против 119. А по максимальной отдаче агрегат сопоставим с двигателями V12 на автомобилях BMW и Mercedes: 600 л.

с. и 880 Нм крутящего момента.

При этом на всех машинах семейства ЕМП моторы будут работать с гибридной трансмиссией на основе электромашины и девятиступенчатого «автомата» R932 московской компании КАТЕ, в создании которого принимал участие бывший гендиректор НАМИ Максим Нагайцев. То есть отдача комбинированной силовой установки cтанет еще выше.

Двенадцатицилиндровые лимузины тоже будут гиб­ридными. На вопрос, зачем 830-сильному монстру еще и электромотор, и конструктор Анохин, и директор Теренченко отвечают долгой паузой: это было непременным условием техзадания, которое согласовывали на самом верху. И электромеханическая трансмиссия, судя по всему, нужна Кортежу не только для экономичности и лучшей динамики, но также в роли резервной силовой установки.

Для опытных моторов кованые поршни сделаны на заказ, но для серийных двигателей их производство должно быть локализовано в России

Традиционный на первый взгляд мотор V12 соткан из технических решений, продиктованных теми, кто призван следить за покоем и безопасностью пассажиров-небожителей.

Рабочий процесс тут от «восьмерки», блок цилиндров скомпонован под традиционным для такой архитектуры углом 60°, но турбокомпрессоров четыре, а приводные ремни и некоторые навесные агрегаты из конструкции исключены. Роль стартера и генератора выполняет электромашина гибридной трансмиссии, механизм газораспределения и насос гидроусилителя руля приводятся цепью, вакуумный насос — от распредвала.

Правда, в том, что касается надежности, больше всего вопросов вызывает как раз гибридная трансмиссия, ведь «автомат» КАТЕ лишен гидротрансформатора, плавность старта и переключений он обеспечивает за счет пробуксовки управляющих фрикционов. Однако такая трансмиссия имеет предел по входящему крутящему моменту: 1000 Нм. А царь-двигатель, напомню, должен развивать 1320 Нм.

Однако пока ни один мотор V12 еще не вышел на стендовые испытания с полной нагрузкой. Самые ранние экземпляры, преодолев холодные и горячие пуски, дошли только до механических испытаний на стенде и в составе автомобиля, в рамках которых двигатель работает максимум на две трети своих возможностей.

При этом все моторы V12 сделаны в НАМИ — силами значительно модернизированного опытного производства, которое позволяет изготавливать прототипные партии силовых агрегатов любой сложности. За последний год в цехах появились новые пятикоординатные токарные и фрезеровочные станки, аппараты быстрого прототипирования (3D-принтеры) и даже литейные комплексы, где можно изготавливать пилотные образцы алюминиевых головок и блоков цилиндров, а также деталей трансмиссии и подвески. Причем не обязательно для «кортежных» автомобилей.

На мониторе у конструктора Юрия Натепрова — трехмерная модель обычной рядной «четверки» 2.2: один турбокомпрессор, непосредственный впрыск, 245 л.с. и 380 Нм крутящего момента. Но это топ-версия, а на основе того же блока готовится и «народный» вариант — атмосферник с распределенным впрыском. Первую «четверку» должны собрать уже в этом году.

А в середине сентября Алексей Теренченко на конференции автомобильных инженеров в Тольятти объявил, что, помимо этого, НАМИ на основе унифицированного модуля способен разработать еще и компактные рядные агрегаты с тремя, двумя и даже одним цилиндром.

Применять такие моторчики можно не только на автомобилях, но и на катерах, мотоциклах и даже на садовой и строительной технике. Турботройка объемом 1,65 л будет развивать 181 л.с., атмо­сферная «двойка» 1.1 — 76 л.с. Ну а самым скромным в линейке должен стать одноцилиндровый 550-кубовый мотор на 41 л.с.

Кроме того, в инженерном заделе НАМИ есть семейство рядных атмосферных и наддувных дизелей тех же конфигураций, от одноцилиндрового мощностью 15 л.с. до четырехцилиндрового 2.2 на 184 л.с. Правда, все двигатели меньше бензиновой «четверки» существуют пока только в виде виртуальных проектов, подготовку которых поручили студентам университета имени Баумана. Так что царь-мотоцикл и ­царь-бетономешалку придется еще немного подождать. 

Кортеж прошел 50 тысяч виртуальных краш-тестов

29.05.2018

Мало кто верил в успех проекта «Кортеж» в 2014 году, когда он только начинался, вспоминает профессор Санкт-Петербургского политеха, руководитель Центра компьютерного инжиниринга Алексей Боровков, который в составе команды разработчиков создавал автомобиль для президента.

Мало кто верил в успех проекта «Кортеж» в 2014 году, когда он только начинался, вспоминает профессор Санкт-Петербургского политеха, руководитель Центра компьютерного инжиниринга Алексей Боровков, который в составе команды разработчиков создавал автомобиль для президента. В интервью РИА Новости в кулуарах ПМЭФ-2018 он рассказал, сколько проводилось краш-тестов автомобиля номер один, какие технологии и материалы используются в машинах, которые теперь называются Aurus, когда начнется их серийное производство и есть ли на них спрос, а также почему роботы все-таки не смогут заменить человека. Беседовали Дарья Станиславец и Диляра Солнцева.

— Какие проекты в рамках дорожной карты «Технет« активно развиваются и востребованны?

— Сейчас одним из наиболее важных направлений «Технет» Национальной технологической инициативы, которое чрезвычайно востребовано в высокотехнологичной промышленности, становятся цифровые двойники. Речь идет о математической модели высокого уровня адекватности, которая ведет себя практически точно так же, как реальный объект в натурных испытаниях, а затем и на этапе эксплуатации. Эта технология в России впервые была применена для реализации проекта «Кортеж» — для разработки единой модульной платформы и проектирования кузовов лимузина, седана, минивэна и внедорожника. Именно в рамках этого проекта нами были разработаны многоуровневые матрицы целевых показателей и ресурсных ограничений, включающие примерно 50 тысяч характеристик.

Это ноу-хау в проектировании позволило обоснованно существенно снизить объем натурных испытаний, которые в традиционной парадигме проектирования используются для доводки изделия до требований, соответственно, сроки испытаний и себестоимость продукции. Были выполнены десятки тысяч виртуальных испытаний и получен цифровой двойник, на основе которого был сделан опытный образец, который фактически с первого раза прошел все нужные испытания.

В результате в июне 2016 года в Берлине седан получил с первого раза на независимом полигоне высший балл по пассивной безопасности.

Сейчас в современной высокотехнологичной промышленности центр тяжести в глобальной конкуренции переносится на этап проектирования — кто быстрее и больше вложит интеллекта, создаст цифровой двойник, тот и победит в конкурентной борьбе. Это сейчас самая актуальная тема для создания цифровой промышленности в рамках цифровой экономики.

— Как долго вы создавали цифровые двойники для проекта «Кортеж», автомобили которого теперь официально называются серией Aurus?

— Мы начали работу в апреле 2014 года, независимые испытания в Берлине были уже в июне 2016 года, наша работа заняла около полутора лет. Это был очень трудоемкий проект, еще в марте 2014 года весь российский автопром практически единогласно утверждал, что создать единую модульную платформу в эти сроки не получится.

— Сколько было виртуальных краш-тестов этих автомобилей?

— Чтобы получился виртуальный краш-тест всего автомобиля, нужно прежде всего провести виртуальные испытания каждой детали, для каждой сварной точки, которых тысячи — то есть это как минимум 50 тысяч виртуальных испытаний. Это очень много — считайте, 50-100 виртуальных испытаний каждый день, особенно если мы хотим сделать автомобиль по характеристикам не хуже, а даже лучше, чем аналогичные машины у Mercedes или у Rolls-Royce.

— А реальных краш-тестов сколько прошли?

— Существенно меньше, чем это требуется в рамках традиционного подхода. Сейчас вообще в мировом автопроме происходит уменьшение объемов натурных испытаний — где-то раз в 30-50 оно уменьшилось за 10 лет. При этом более чем в 100-150 раз увеличился объем виртуальных испытаний на основе цифровых двойников.

— В автомобилях проекта Aurus используются российские шины, кожа, двигатель, а что с металлом?

— Он тоже наш, российский. Нам нужно было разработать металл, который не хуже того, что используется в мировом автопроме, и нужно было обеспечить специальное исполнение.

Причем были применены передовые технологии, связанные с тонким химическим анализом и проведением натурных экспериментов, разработкой математических моделей и их валидацией на основе полученных в рамках проекта многочисленных экспериментальных данных, а главное, детально рассматривалось поведение материала в конструкции машин. Именно на основе этого подхода от материала можно получить максимум в эксплуатационных условиях использования машин и в аварийных ситуациях, если они произойдут.


— Рассматривается ли возможность производства Aurus на других заводах?

— Будет небольшая серия, как считают эксперты, НАМИ сможет выпускать 150-200 автомобилей в год, это в первую очередь седаны. Это стапельная сборка, дальше будет подключен опытный автопроизводитель, например Sollers.

Конечно, наиболее коммерчески интересным представляется внедорожник. Кстати, с УАЗ мы сейчас ведем совместную разработку нового внедорожника для массового рынка на основе самых передовых подходов, взяв для бенчмарка лучшие модели мировых лидеров.

— Какие технологии «Кортежа» могут быть применены как для автопрома, так и для других отраслей в целом?

— Это проектирование, точнее, принципиально новая парадигма проектирования на основе многоуровневой матрицы целевых показателей и ресурсных ограничений. Это математические модели высокого уровня адекватности реальным объектам и реальным физико-механическим и производственным процессам. Это десятки тысяч виртуальных испытаний отдельных деталей и конструкций в целом, значительно снижающие объемы натурных испытаний. Это проектирование на основе специализированной цифровой платформы и с помощью системы интеллектуальных помощников. Подчеркну, все что указано, это российские технологии, которые сотрудниками инжинирингового центра СПбПУ и группы компаний CompMechLab разрабатывались годами.

Эти подходы и технологии можно применить не только в автопроме, но и в авиа- и судо-, двигателестроении и так далее.

Основное достижение «Кортежа» — создание и демонстрация возможностей новой парадигмы проектирования, создание цифровой платформы, системы интеллектуальных помощников, которые, конечно же, открыли нам дверь в будущее и обеспечили технологический прорыв, заложили основы цифровой промышленности в рамках формируемой цифровой экономики.

— Планируется ли разработка мотоцикла для проекта «Кортеж»?

— За это, насколько известно, взялся концерн «Калашников», российские мотоциклы будут в самое ближайшее время, испытания уже пройдены.

— Какое количество в проекте Aurus российских и иностранных технологий?

— При старте проекта ставилась задача на 100% использовать российские технологии, но были и высокие требования по комфорту, конечно, жесточайшие требования по безопасности.

Над проектом работали около 150 организаций, естественно, предпринималась попытка работать только на российских технологиях и материалах, но если возникали риски, что отечественные технологии уступают зарубежным по характеристикам, то, конечно же, применялись самые лучшие мировые технологии. Нам нельзя было допустить, чтобы конечный продукт не соответствовал требованиям мирового уровня.

Как правило, все обсуждают внешний вид машины. Но он занимает лишь малую долю работы, а ключевыми являются такие характеристики, как жесткость, прочность, долговечность, вибрации, акустика, шумы, комфорт, наконец, все типы безопасности.

Фактически наша задача была обеспечить одновременно комфорт премиум-класса и специсполнение с уникальными характеристиками по безопасности.

— А с точки зрения безопасности были применены только российские технологии?

— Да, конечно.

— Машина для российского президента будет уникальна, единственна в своем роде?

— Да, конечно, понимая, что таких машин будет несколько. У машин для других клиентов будут пониженные характеристики, в первую очередь по безопасности, но не по комфорту.

— Есть ли уже интерес к этим машинам?

— Уже больше года назад был сформирован достаточно большой список интересантов, это десятки бизнесменов и российских, и иностранных, очень высокий интерес проявляет Китай. Обещано, что «Кортеж» выйдет в мелкое серийное производство в начале следующего года.


— Можно ли сказать, что проект окупится?

— В первую очередь на это имеют шансы седан, внедорожник и минивэн, но с изменением характеристик — их удешевлением, но не ухудшением.

— Для авиапрома вы будете делать какие-то цифровые модели?

— Да. Они уже делаются — в частности, мы интенсивно работаем с Объединенной авистроительной корпорацией, наиболее успешно с «Гражданскими самолетами Сухого» — совместно с коллегами мы значительно продвинулись в адаптации передовых подходов в авиастроении. Важно понимать, что подходы, о которых я кратко рассказал, будут широко проникать во все высокотехнологичные отрасли, так как именно они обеспечивают разработку и создание в кратчайшие сроки новой глобально конкурентоспособной и востребованной продукции.

— Еще одним направлением дорожной карты «Технет» НТИ является 3D-принтинг (аддитивные технологии). Что у нас уже напечатано, что умеют печатать и что будут?

— Прежде всего это, конечно, отдельные детали. Есть у нас, скажем, в двигателестроении в России компании, которые напечатали более 600 разных деталей. Сейчас эти детали проходят ресурсные испытания.

Безусловно, за этим будущее. Но и здесь важно понимать, что если мы напечатаем элементы конструкций, спроектированных ранее под изготовление на основе станков с числовым управлением, то это будет экономически не выгодно, как правило, будет значительно дороже.

Аддитивные технологии или шире — аддитивное производство, конечно, целесообразно лишь в случае нового проектирования изделий с широким применением многочисленных технологий оптимизации, которые фактически породили новые типы проектирования — бионический дизайн, генеративный дизайн. Только в этом случае мы можем получить лучшие в своем классе конструкции, минимальные по весу, но удовлетворяющие всем необходимым требованиям по жесткости, прочности, вибрациям, долговечности и так далее.

— В проекте Aurus есть уже что-то напечатанное на 3D?

— Да, конечно, есть.

— А что?

— Давайте не будем раскрывать всех подробностей (смеется). Например, есть детали, которые создавались с помощью гибридных технологий, то есть сначала печаталась из пластика мастер-модель спроектированной оптимальной конструкции, а потом уже, скажем, литьем под давлением делались детали, которые по характеристикам, в первую очередь по весовым характеристикам, в 3-4 раза лучше, чем аналоги у BMW и Porsсhe.

И даже ведущие специалисты Porsсhe специально приезжали к нам в инжиниринговый центр СПбПУ знакомиться с этими передовыми подходами и утверждали, что они пока до этого не дошли.

— Печатаются ли в России материалы для строительства домов?

— Есть несколько стартапов в России, которые в этом направлении движутся, уже что-то печатали. Это тоже будет популярное направление.

В этой сфере есть лидер — Объединенные Арабские Эмираты. Они представили очень много таких домов, которые печатаются в виде улитки, в виде черепашек и так далее. Все они очень занятные, но с виду несколько непривычные, конечно, это креативный дизайн.

— Реально ли, что в будущем у нас будут дома печатать, или это фантастика?

— Все когда-то считается фантастикой. Есть известная фотография 1900 года Пятой авеню в Нью-Йорке, где лошади и повозки и только один автомобиль, а через 13 лет — все автомобили и одна повозка. Изменения сейчас происходят очень стремительные, они на самом деле происходят гораздо быстрее, чем мы ожидаем, думаем, предполагаем.

Нас ждет и существенное изменение рынка труда, занятости. Хотя по-прежнему во многих случаях человек по-прежнему обходится дешевле, чем тот же робот. Но если в длительном времени посмотреть, то понятно, что робот кушать не просит, не устает, наконец, не является членом профсоюза и так далее. В конце концов, если он надоел, его можно из розетки выключить.

— Какие профессии могут исчезнуть, по вашему мнению?

— Те, которые подлежат хорошей автоматизации. Ну, по идее, во многих случаях это охранники, потому что идентификацию уже можно проводить через отпечатки пальцев, роговицу глаза и так далее. Конечно, под угрозой бухгалтеры, юристы, кадровики.

Но в любом случае высокопрофессиональные, высокоуровневые специалисты не исчезнут. Простейшие трактовки законов, нормативных актов, безусловно, роботы с элементами искусственного интеллекта сделают качественней. А когда ситуации нетривиальные, тут, конечно, юристы высокого класса, профессионалы дадут фору искусственному интеллекту.

Источник: РИА Новости

Новости проекта «Кортеж» – Страница 3

Номера лимузина Aurus Senat Путина раньше стояли на ржавой «Волге»07 мая 2018, 19:40Пользователи соцсети Twitter нашли номерной знак в776ус77 президентского лимузина Aurus на ржавой брошенной «Волге», фотография которой была опубликована более 4-х лет назад на сайте avto-nomer.ru.

Автомобили проекта «Кортеж» получили имена кремлевских башен07 мая 2018, 15:28Глава Министерства промышленности и торговли РФ Денис Мантуров заявил, все модели проекта «Кортеж» получат названия кремлевских башен.

Путин приехал на инаугурацию на автомобиле проекта «Кортеж»07 мая 2018, 13:02Президент России Владимир Путин воспользовался лимузином Aurus Senat проекта «Кортеж» для своей инаугурации 7 мая 2018 года. Соответствующие фото были размещены на сайте Администрации Президента России.

Новый лимузин Путина из проекта «Кортеж» заметили на дорогах Москвы27 апреля 2018, 18:37«Живой» серийный лимузин проекта «Кортеж», который совсем скоро перейдет в эксплуатацию президенту России Владимиру Путину, заметили на дорогах Москвы. Правда, автомобиль ехал не своим ходом, а на эвакуаторе, «прикрывшись» плотным камуфляжным чехлом.

В Сети появились первые рендеры кроссовера проекта «Кортеж»26 апреля 2018, 17:35Первые рендерные изображения будущего представительского кроссовера из проекта «Кортеж» появились в Сети. Авторами рендеров стали независимые российские дизайнеры с портала «Колеса.ру».

Минпромторг: автомобиль проекта «Кортеж» успешно прошел краш-тест18 апреля 2018, 08:04Министр промышленности и торговли РФ Денис Мантуров сообщил об успешном краш-тесте автомобиля «Кортеж». Сообщается, что он остался доволен первым подобного рода испытанием, проведенным над важнейшей автомобильной разработкой последних лет.

Стала известна стоимость президентского лимузина «Кортеж»‍18 июля 2017, 03:30Автомобили проекта «Кортеж» будут стоить не дешевле моделей таких марок, как Bentley и Rolls-Royce. Об этом журналистам сообщил представитель НАМИ Кирилл Казмирчук. Это значит, что купить российские люксовые авто можно будет имея не менее 7-10 млн.

Лимузин проекта «Кортеж» получит двигатель в 850 лошадиных сил13 июля 2017, 03:30«Топовый» двигатель V12 для лимузина проекта «Кортеж» будет иметь мощность в 850 «лошадей». Об этом со ссылкой на руководителя отдела развития и перспективных технологий НАМИ Кирилла Казмирчука сообщают российские СМИ.

Проект «Кортеж»: Внедорожник заморожен из-за нехватки средств28 июня 2017, 03:30Появилась информация о том, что внедорожник из государственного проекта «Кортеж» пока выпадает из обоймы моделей, которые разрабатываются силами «НАМИ». О заморозке создания внедорожника сообщил источник, знакомый с ситуацией.

Денис Мантуров рассказал о будущем проекта «Кортеж»21 июня 2017, 03:32Уже через пять лет автомобили проекта «Кортеж» будут ежегодно выпускаться в количестве более 1 тысячи штук. Об этом сообщил министр промторга Российской Федерации Денис Мантуров.

Российские конструкторы представили новый президентский автомобиль «Аурус» из проекта «Кортеж»

Все мы видели на инаугурации новый президентский лимузин. Это машина нашего российского производства. И это не какая-нибудь сборка из готовых деталей. Почти все комплектующие – российского производства. Амортизаторы произведены в Башкирии, топливный бак в Нижнем Новгороде, диски – в Красноярске, шины – в Нижнекамске, кожаный салон отшит в Рязани. И даже двигатель, сложнейший агрегат, тоже нашей разработки. Причем, этот лимузин – не эксклюзив, выпущенный в единичном экземпляре к инаугурации. На единой платформе будут выпускаться машины нескольких типов, не только бронированные. Уже налаживается его серийное производство. Конечно, не массовое, автомобиль очень дорогой. Его создатели рассчитывают, что до конца года будет продано 100-150 автомобилей.

Лидеры немногих государств ездят на отечественных автомобилях. Пять-семь стран в состоянии произвести такой сложный продукт. Теперь и Россия в этом ряду. А до этого президенты России использовали «Мерседес». Машина хорошая. Но наша, будем надеяться, не хуже.

«Здесь можно видеть, с чего мы начинали. Первые эскизы, первые образцы. Несколько лет мы искали лицо нашего автомобиля, доброе, но сильное», – говорит начальник Управления дизайна ФГУП «НАМИ» Юрий Черненко.

До этой недели о новом отечественном лимузине мы не знали почти ничего. На сайте научного центра НАМИ, который разработал автомобиль, среди проектов числится некая «Единая модульная платформа». И никакой информации, кроме распоряжения правительства от 2013 года: «Создание автотранспортных средств для первых лиц государства».

«Были разные случаи, пытались и извне проникать, фотографировать, и по незнанию некоторые из сотрудников пытались выкладывать. Мы такие утечки пресекали», – рассказал заместитель гендиректора ФГУП НАМИ по безопасности Игорь Поспелов.

И вот спустя пять лет тайное стало явным. В день инаугурации президент пересел в представительский автомобиль российского производства марки «Аурус» — это название получилось слиянием двух слов: «aurum» на латыни — «золото», и Россия. Машина с серьезными габаритами. И конечно, для такой массы нужен мощнейший двигатель.

«Применены самые современные и перспективные технические решения. Например, автомобиль является гибридным транспортным средством. Это, скажем так, первый отечественный автомобиль последних десятилетий класса «премиум». То есть, перед нами были поставлены очень амбициозные цели», – говорит главный конструктор проекта «Единая модульная платформа ФГУП «НАМИ» Вадим Переверзев.

С нуля сделать надежный и красивый лимузин в современном мире почти невероятно. Ведь история правительственных автомобилей была прервана.

«Такая громадная страна, запускаем в космос корабли, ну что это — мы свою машину не можем сделать? Она – вот она же. Легкость какая в ней, стремление, движение – правда? Красивая, она – просто красивая машина», – говорит Алексей Булгаков. Он — бывший водитель Бориса Ельцина. Он начинал свою работу в правительственном гараже на легендарных советских «ЗИЛах» и «Чайках». И ему было очень больно видеть, как любимая машина превратилась в музейный экспонат. В 1993 году в гараже особого назначения появились первые иномарки. В 1997 году Борис Ельцин еще пытался патриотично пересесть с «Мерседеса» на «ЗИЛ», но развитие автомобильного производства отставало. И два десятка лет лидеры России ездили на иностранных машинах. До тех пор пока не появился «Аурус».

«Мы проанализировали историю нашего государства. Существовало два важных эмоциональных события. Это победа во Второй Мировой войне и первый полет первого космонавта в космос», – говорит начальник Управления дизайна ФГУП «НАМИ» Юрий Черненко.

Дизайнеры НАМИ подчеркивают, что пытались сохранить преемственность. Но если речь про Юрия Гагарина, то всплывает в памяти 111-й «ЗИЛ».

«Редкий экземпляр. Здесь открывается крыша, есть парадная ручка, то есть, автомобиль именно для торжественных встреч и парадов. И на этом автомобиле везли Гагарина после его полета в космос», — рассказывает экскурсовод музея техники Вадима Задорожного Валерия Хоминская.

Автомобиль, на котором Гагарин ехал через всю Москву, похож на «Аурус» массивными и формами и строгими линиями. А вот характерную решетку радиатора комментаторы в интернете чаще сравнивали с «Роллс-Ройсом».

«Хорошо, что наши автомобили сравнивают с «Роллс-Ройсом», с «Бентли». Это автомобили премиального класса. Но мы увидели наш советский автомобиль ЗИС -110 и вот эту его архитектуру – большая вертикальная решетка от низа до самого верха и расходящиеся «усы». Они легли в основу лица нашего автомобиля», – поясняет Юрий Черненко.

Производство ЗИС-110 началось в 1945 году. А вот та самая решетка радиатора – сравнивайте.

«Еще обратите внимание на толщину этих дверей, стекол. Есть единственное место, где видно эту броню, потому что это бронекапсула, она незаметна. А стекла бронировали таким образом: склеивали несколько слоев, получалась толщина семь с половиной сантиметров. Дверь весила 200 килограмм. А общий вес автомобиля пять с половиной тонн составлял», – рассказывает экскурсовод музея техники Вадима Задорожного Валерия Хоминская.

Современный лимузин для президента, конечно, тоже бронированный и тоже весит немало. Но важно, что конструкторы НАМИ создали не одну единственную машину для Путина, а разработали целую линейку автомобилей представительского класса, которые будут производиться в России.

«Раз президент пересел, конечно, все должны», – говорит и.о. главы Минпромторга России Денис Мантуров.

Идея пересадить чиновников на отечественные машины теперь не кажется утопической. Модели автомобилей «Аурус» будут называться в честь башен Кремля. Лимузин, как у Путина, носит имя «Сенат», минивэн — «Арсенал», а внедорожник— «Комендант». Публичный показ этих автомобилей запланирован в конце августа на Московском международном автосалоне. А жители Москвы уже встречают «Аурус» на улицах города, и любительские ролики с новым президентским кортежем уже попадают в интернет.

В НАМИ разработали варианты эмблем для автомобилей проекта Кортеж

НАМИ разработал три варианта эмблем для автомобилей проекта Кортеж (Единая модульная платформа). Центральное место во всех трех эмблемах занимает вертикальный щит, в двух вариантах за щитом стоят мужчины в доспехах, а в третьем — двуглавый орел с расправленными в горизонталь крыльями. Также в двух из трех вариантов на щит нанесено стилизованное изображение меча.

Стилистическое решение эмблем проекта Кортеж пересекается с геральдикой КГБ СССР и ФСБ России (там тоже основным образом является сочетание щита и меча). Видимо, дизайнеры НАМИ таким образом подчеркивают, кто станет основными потребителями автомобилей проекта Кортеж.

Пока нет информации о том, какой из логотипов в итоге будет устанавливаться на автомобили Кортежа.

Напомним, в октябре 2016 года НАМИ зарегистрировал торговую марку Aurus, которая предположительно будет использоваться в качестве наименования марки автомобилей на Единой модульной платформе. Тогда же была зарегистрировано графическое изображение эмблемы с надписью Aurus. Многие обратили внимание, что эта эмблема сделана нарочито простенькой и скорее всего разработана для проформы. В пояснительной записке к торговой марке название «Aurus» расшифровывается как сочетание слов «aurum» (золото) и «Russia» (Россия).

В октябре 2015 года сообщалось, что НАМИ зарегистрировал товарную марку Мономах. Предположительно она будет использоваться как название модели для флагмана линейки Кортеж — лимузина ЕМП-412311. В этом случае полное название лимузина будет звучать как Aurus Monomakh.

Проект Единая модульная платформа, он же проект «Кортеж», стартовал в конце 2012 года. Он реализуется на средства федерального бюджета. В рамках проекта создается унифицированная платформа, на которую будут опираться представительский седан, полноразмерный внедорожник и микроавтобус. Все машины семейства будут иметь шасси с постоянным полным приводом. Основные проектные работы по Кортежу согласно госконтракту должны быть завершены к 31 декабря 2016 года.

Семейство автомобилей проекта «Кортеж» будет включать седан (индекс ЕМП-4123), внедорожник (ЕМП-4124), микроавтобус (ЕМП-4125), а также два лимузина — обычный (ЕМП-412311) и бронированный (ЕМП-41231SB).

Нравится(38)Не нравится(42)

При использовании материала, пожалуйста, сделайте ссылку на Русский автомобиль.

Принципы проектирования SOLID с примерами на Python / Хабр

Эффективный алгоритм – основа работы эффективного программного обеспечения. Когда алгоритм уже есть, следующая задача – сделать так, чтобы ПО было разработано с использованием лучших методов проектирования и лучшей архитектуры. Специалисты, исследователи и эксперты определили лучшие практики эффективного проектирования программных приложений. Одной из наиболее популярных среди них являются принципы проектирования, известные под аббревиатурой SOLID.

Самыми известными и важными считаются принципы проектирования, предложенные Робертом К. Мартином (также известным как Дядя Боб). Дядя Боб представил много разных принципов проектирования, однако самых популярных всего 5, сокращенно их называют SOLID-принципами. В основном они сфокусированы вокруг объектно-ориентированной парадигмы проектирования ПО. Если учитывать эти рекомендации при разработке объектно-ориентированного ПО, код станет не таким сложным, снизится риск поломок, улучшится взаимодействие между различными объектами и код станет более гибким, читаемым и управляемым. 

Роберт К. Мартин (Дядя Боб)

SOLID-принципы Дяди Боба расшифровываются следующим образом:

  • S – Принцип единственной ответственности (Single Responsibility Principle),

  • O – Принцип открытости/закрытости (Open‐Closed Principle),

  • L – Принцип подстановки Барбары Лисков (Liskov Substitution Principle),

  • I – Принцип разделения интерфейсов (Interface Segregation Principle),

  • D – Принцип инверсии зависимостей (Dependency Inversion Principle).

В этой статье я поделюсь своим пониманием принципов проектирования SOLID Роберта К. Мартина и снабжу его примерами на Python.

Примечание: Примеры кода, которые я привожу, будут весьма минималистичны по своей природе, поскольку они написаны с единственной целью – объяснить соответствующий принцип. Они могут быть неполными или не соответствовать какому-либо другому принципу или передовой практике. Я прошу читателей принять это во внимание при чтении кода каждого принципа.

Принцип единственной ответственности

Принцип единой ответственности гласит, что у каждого класса должна быть только одна «ответственность» и он не должен брать на себя другие обязанности. Роберт К. Мартин объяснял его так: «У класса должна быть лишь одна причина для изменения». 

Давайте в качестве примера возьмем приложение телефонного справочника. Мы будем делать телефонный справочник, в котором будет класс TelephoneDirectory. Он будет «нести ответственность» за ведение записей справочника, то есть телефонных номеров и названий организаций, которым принадлежат номера. Ожидается, что класс будет выполнять следующие операции: добавлять новую запись (Name и Telephone Number), удалять существующую запись, изменять номер телефона, присвоенный сущности Name, и предоставлять поиск, который будет возвращать номер, присвоенный сущности Name.

Класс TelephoneDirectory может выглядеть следующим образом:

Сейчас наш класс TelephoneDirectory выглядит хорошо, в нем точно реализованы ожидаемые функции:

А теперь скажем, что в проекте есть еще два требования – Сохранить содержимое справочника в базе данных и перенести содержимое справочника в файл. 

Теперь добавим еще два метода в класс TelephoneDirectory, как показано ниже:

Так вот, именно сейчас мы нарушили принцип единственной ответственности. Добавив функции сохранения в базу данных и сохранения в файл, мы дали классу дополнительные обязанности, которые не входят в его основную зону ответственности. Теперь в классе есть дополнительные функции, которые могут привести к его изменению. В будущем, если появятся какие-то требования, связанные с сохранением данных, это может привести к изменениям в классе TelephoneDirectory. Получается, что класс TelephoneDirectory подвержен изменениям по причинам, которые не являются его основной ответственностью.

Принцип единственной ответственности требует от нас не добавлять дополнительные обязанности к классу, чтобы нам не приходилось менять класс, когда нам нужно изменить функционал сохранения справочника в базу данных или в файл. Мы можем передать экземпляр класса TelephoneDirectory экземплярам этих классов и записать любые дополнительные функции в них.

Так мы гарантируем, что у класса TelephoneDirectory есть лишь одна причина для изменения – это изменения в его основной «ответственности».

Примеры кода выше вы можете найти на GitHub

Принцип открытости/закрытости

Принцип открытости/закрытости впервые был сформулирован Бернардом Мейером в 1988 году. Роберт К. Мартин говорил о нем так «Наиболее важный принцип открытости/закрытости гласит «Сущности программы (классы, модули, функции и т.п.) должны быть открыты для расширения, но закрыты для изменений».

Следование этому принципу гарантирует, что класс определен достаточно, чтобы делать то, что он должен делать. Добавление любых дополнительных функций может быть реализовано путем создания новых сущностей, которые расширяют возможности существующего класса и добавляют дополнительные функции самим себе. Таким образом можно предотвратить частые и тривиальные изменения в хорошо зарекомендовавшем себя классе низкого уровня. 

Допустим, у нас есть приложение для магазина одежды. Среди функций системы есть функция применения специальных скидок в зависимости от типа одежды. 

Пример ниже показывает один из способов реализации этого требования.

В примере у нас есть класс DiscountCalculator, который умеет хранить тип одежды. В нем есть функция, которая рассчитывает скидку в зависимости от типа одежды и возвращает новую стоимость за вычетом суммы скидки.

Эта конструкция нарушает принцип открытости/закрытости, поскольку этот класс потребует изменения, если будет добавляться какой-то тип одежды или если сумма скидки на какую-либо одежду изменится.

Как видно из примера выше, теперь у нас есть очень простой базовый класс DiscountCalculator с одним абстрактным методом get_discounted_price. Мы создали новые классы для одежды, которые расширяют базовый класс DiscountCalculator. Следовательно, теперь каждый подкласс будет реализовывать функционал скидок самостоятельно. Сделав так, мы устранили предыдущие ограничения, которые требовали внесения изменений в базовый класс. Теперь, не изменяя базовый класс, мы можем добавлять больше одежды, а также изменять размер скидки на отдельный вид одежды по мере необходимости.

Примеры кода выше вы можете найти на GitHub

Принцип подстановки Барбары Лисков

Принцип подстановки Лисков был одним из самых сложных принципов для меня, и чтобы понять его правильно, мне пришлось посмотреть различные примеры в Интернете. Я считаю, что после осознания, этот принцип станет одним из самых простых, среди принципов, которых следует придерживаться при разработке объектно-ориентированных приложений.

Принцип подстановки Лисков гласит: «Объекты в программе должны быть заменяемы экземплярами их подтипов без ущерба корректности работы программы».

Принцип подстановки Лисков был предложен Барбарой Лисков. Он предполагает отношение подтипов, называемое сильным поведенческим подтипом. Этот принцип говорит нам о том, что если класс Sub является подтипом класса Sup, тогда в программе объекты типа Sup должны легко заменяться объектами типа Sub без необходимости изменения кода. Дядя Боб включил этот принцип в число 5 лучших принципов проектирования SOLID.

Допустим, у нас есть базовый класс Car, который отвечает за тип автомобиля. Класс Car наследуется подклассом PetrolCar. Аналогично, базовый класс Car может быть унаследован другими классами, которые могут расширять его возможности.

Как мы видим здесь, стандартной спецификации для добавления свойств Car не существует, и разработчикам остается реализовать ее удобным для них способом. Один разработчик может реализовать ее как словарь, а другой как кортеж. Таким образом, она может быть реализована несколькими способами.

Пока проблем нет. Но давайте предположим, что есть задача найти все автомобили красного цвета. Давайте попробуем написать функцию, которая брала бы все автомобили и пыталась найти все красные путем реализации объекта суперкласса Car

Как видно из кода, мы пытаемся просмотреть список объектов Car. Именно здесь мы нарушаем принцип подстановки Лисков, поскольку мы не можем заменить объекты супертипа Car объектами подтипа PetrolCar внутри функции поиска красных автомобилей.

Лучшим варианты было бы реализовать методы setter и getter в суперклассе Car. С их помощью мы можем устанавливать и получать свойства автомобиля, не оставляя эту реализацию последующим разработчикам. Таким образом, мы просто получаем свойства с помощью метода setter, и его реализация остается инкапсулированной в суперклассе.

Так мы сможем соблюсти принцип подстановки Лисков, как показано ниже:

Примеры кода выше вы можете найти на GitHub

Принцип разделения интерфейсов

Принцип разделения интерфейсов гласит, что «Ни один клиент не должен зависеть от методов, которые он не использует». 

Принцип разделения интерфейсов был предложен Робертом К. Мартином, когда он консультировал компанию Xerox.

Принцип разделения интерфейсов предполагает создание небольших интерфейсов, известных как «ролевые интерфейсы», вместо большого интерфейса, состоящего из нескольких методов. Разделяя методы по ролям на более мелкие интерфейсы, клиенты будут зависеть только от методов, которые имеют к ним отношение.

Допустим, мы разрабатываем приложение для различных коммуникационных устройств. Мы говорим, что устройство связи – это устройство, которое будет иметь одну или несколько из следующих функций: совершать звонки, отправлять SMS или искать в Интернете. Итак, мы создаем интерфейс с именем CommunicationDevice и добавляем соответствующие абстрактные методы для каждой из этих функций, чтобы любой создаваемый класс смог реализовать эти методы.

Затем мы создаем класс SmartPhone с помощью интерфейса CommunicationDevice и реализуем функционал абстрактных методов. До сих пор все было в порядке.

Теперь предположим, что нам нужно создать стационарный телефон. Он тоже является устройством связи, поэтому мы создаем новый класс LandlinePhone через тот же интерфейс CommunicationDevice. Именно здесь мы сталкиваемся с проблемой из-за объемного интерфейса CommunicationDevice. В классе LandlinePhone мы реализовываем метод make_calls(), но поскольку мы также наследуем абстрактные методы send_sms() и browse_internet(), мы должны предоставить реализацию и этих двух абстрактных методов в классе LandlinePhone, даже если они в принципе неприменимы к этому виду телефонов. Мы можем либо создать исключение, либо оставить pass вместо реализации, но нам все равно нужно ее предоставить.

Все можно исправить, следуя принципу разделения интерфейсов, как в примере ниже. Вместо создания большого интерфейса мы создаем более маленькие ролевые интерфейсы для каждого метода. Соответствующие классы будут использовать только связанные интерфейсы.

Примеры кода выше вы можете найти на GitHub

Принцип инверсии зависимостей

Принцип инверсии зависимостей гласит:

  1. Модуль высокого уровня не должен зависеть от модулей низкого уровня. И то, и другое должно зависеть от абстракций. 

  2. Абстракции не должны зависеть от деталей реализации. Детали реализации должны зависеть от абстракций.

Если ваш код уже реализует принципы открытости/закрытости и подстановки Лисков, он уже будет неявно согласован с принципом инверсии зависимостей.  

Следуя принципу открытости/закрытости, вы создаете интерфейсы, которые можно использовать для предоставления различных высокоуровневых реализаций. Следуя принципу подстановки Лисков, вы гарантируете, что сможете заменить экземпляры класса низкого уровня объектами класса высокого уровня без какого-либо негативного воздействия на приложение. Таким образом, следуя этим двум принципам, вы гарантируете, что ваши классы высокого уровня и классы низкого уровня зависят от интерфейсов. Следовательно, вы неявно следуете принципу инверсии зависимостей.

Как показано в коде ниже, у нас есть класс Student, который мы используем для создания экземпляров Student и класса TeamMemberships, который содержатся сведения о принадлежности учеников к разным командам.

Теперь мы определим высокоуровневый класс Analysis, где нам нужно отсеять всех учеников, принадлежащих красной команде.

Как видно из реализации, мы напрямую используем team_student_memberships.team_memberships в высокоуровневом классе Analysis, и мы используем реализацию этого списка непосредственно в классе высокого уровня. На данный момент все нормально, но представьте ситуацию, в которой нам нужно изменить эту реализацию со списка на что-то другое. В этом случае наш класс высокого уровня Analysis сломается, поскольку он зависит от деталей реализации TeamMemberships низкого уровня.

Теперь взгляните на пример ниже, в котором мы меняем эту реализацию и приводим ее в соответствие с принципом инверсии зависимостей.

Чтобы следовать принципу инверсии зависимостей, нам необходимо убедиться, что класс высокого уровня Analysis не зависит от конкретной реализации класса низкого уровня TeamMembership. Вместо этого он должен зависеть от некоторой абстракции.

Итак, мы создаем интерфейс TeamMembershipLookup, который содержит абстрактный метод find_all_students_of_team, передающийся любому классу, наследующему этот интерфейс. Мы наследуем наш класс TeamMembership от этого интерфейса, следовательно, теперь класс TeamMembership должен предоставлять реализацию функции find_all_students_of_team. Затем эта функция передает результаты любому другому вызывающему ее объекту. Мы перенесли обработку, которая делалась в классе высокого уровня Analysis в TeamMemberships через интерфейс TeamMembershipLookup.

Сделав все это, мы убрали зависимость класса Analysis от класса TeamMemberships и перенесли ее в интерфейс TeamMembershipLookup. Теперь класс высокого уровня не зависит от деталей реализации класса низкого уровня. Любые изменения в деталях реализации класса низкого уровня не влияют на класс высокого уровня.

Примеры кода выше вы можете найти на GitHub

Итог:

Принцип

Смысл

Принцип единственной ответственности

У класса должна быть всего одна причина для изменения.

Принцип открытости/закрытости

Сущности программы (классы, модули, функции и т. п.) должны быть открыты для расширения, но закрыты для изменений.

Принцип подстановки Барбары Лисков

Объекты в программе должны быть заменяемы экземплярами их подтипов без ущерба корректности работы программы.

Принцип разделения интерфейсов

Ни один клиент не должен зависеть от методов, которые он не использует.

Принцип инверсии зависимостей

Модуль высокого уровня не должен зависеть от модулей низкого уровня. И то, и другое должно зависеть от абстракций. 

Абстракции не должны зависеть от деталей реализации. Детали реализации должны зависеть от абстракций.

Примечание: Весь код на Python из этой статьи можно загрузить с моего GitHub вместе с PDF-файлом этой статьи.

Источники:

  1. Дмитрий Нестерюк для курса по паттернам проектирования на Udemy.

  2. Джордан Хадженс из DevCamp с его туториалами на YouTube.

  3. Wikipedia с ее великолепным информативным контентом.


Перевод материала подготовлен для будущих студентов специализации Python Developer. Всех желающих приглашаем на открытый урок, на котором мы познакомимся с Декораторами, узнаем, что они из себя представляют и как работают, а также научимся создавать их самостоятельно.

олигархи, бизнесмены и депутаты-миллионеры бегут с Украины — ИноТВ

  • Захарова заявила, что Запад не заинтересован в сильной Украине

    Официальный представитель МИД России Мария Захарова назвала невероятным «публичное непонимание» президентом Украины Владимиром Зеленским того факта, что Запад не заинтересован в сильной Украине.

  • Крикунов: вратарь Федотов стал лучшим игроком сборной России на Играх-2022

    Бывший главный тренер сборной России Владимир Крикунов назвал лучшего хоккеиста в составе национальной команды на зимней Олимпиаде 2022 года в Пекине.

  • Фильппула — после победы Финляндии на ОИ: горжусь, что являюсь капитаном этой сборной

    Нападающий и капитан сборной Финляндии Валттери Фильппула поделился эмоциями после победы над Россией в финале Олимпиады в Пекине.

  • Чуприян: шесть поездов перевезут более 5 тысяч беженцев из Донбасса в регионы России

    Врио главы МЧС России Александр Чуприян сообщил, что ещё шесть поездов перевезут 20 февраля более 5 тыс. жителей самопровозглашённых ДНР и ЛНР в Воронежскую, Курскую, Белгородскую и Брянскую области.

  • Губерниев: золота на ОИ-2022 российские спортсмены явно не добрали

    Известный спортивный комментатор Дмитрий Губерниев подвёл итоги Олимпиады в Пекине.

  • Россия и Белоруссия продолжат совместную проверку сил реагирования

    Белоруссия и Россия приняли решение продолжить совместную проверку сил реагирования из-за военной активности у границ Союзного государства и обострения в Донбассе, заявили в белорусском Минобороны.

  • Мацуев: игра сборной России на Играх-2022 оставила разочаровывающее впечатление

    Народный артист России Денис Мацуев считает, что сборная России по хоккею показала невнятную игру на зимней Олимпиаде 2022 года в Пекине.

  • Михайлов поблагодарил сборную России по хоккею за серебро Игр в Пекине

    Двукратный олимпийский чемпион Борис Михайлов отреагировал на поражение сборной России по хоккею от Финляндии на Олимпиаде в Пекине.

  • В МЧС России заявили о готовности около 30 регионов принять беженцев из Донбасса

    Врио главы МЧС России Александр Чуприян заявил, что почти 30 российских регионов готовы принять беженцев из самопровозглашённых ЛНР и ДНР.

  • Около 60 российских спортсменов примут участие в церемонии закрытия Игр-2022

    Руководитель службы информации Олимпийского комитета России (ОКР) Константин Выборнов рассказал, сколько российских спортсменов примут участие в церемонии закрытия зимних Игр 2022 года в Пекине.

  • В Госдуме прокомментировали поражение сборной России по хоккею в финале Олимпиады

    Председатель комитета Государственной думы по физической культуре и спорту Дмитрий Свищёв отреагировал на поражение сборной России по хоккею от команды Финляндии на Олимпиаде в Пекине.

  • Автор решающей шайбы в ворота России высказался о победе Финляндии на ОИ-2022

    Нападающий сборной Финляндии по хоккею Ханнес Бьёрнинен поделился эмоциями после победы над командой России в финале Олимпиады в Пекине.

  • КГБ Белоруссии задержал планировавших срыв референдума по поправкам в Конституцию

    Сотрудники Комитета государственной безопасности (КГБ) Белоруссии задержали группу лиц, планировавшую срыв референдума по принятию поправок в Конституцию. Об этом заявил заместитель начальника Следственного управления КГБ Константин Бычек.

  • Гусев: верили до самого конца, что можем сравнять счёт в матче с финнами

    Нападающий сборной России по хоккею Никита Гусев прокомментировал завоевание серебряных медалей на зимней Олимпиаде 2022 года в Пекине.

  • В оперштабе ЛНР заявили об эвакуации в Россию более 28 тысяч человек

    В штабе территориальной обороны самопровозглашённой Луганской народной республики заявили, что в Россию с 18 февраля эвакуированы более 28 тыс. человек.

  • Ковальчук: готов работать дальше с Жамновым в сборной России по хоккею

    Генеральный менеджер сборной России по хоккею Илья Ковальчук рассказал о своих планах после зимней Олимпиады 2022 года в Пекине.

  • Плющев: в сборной России по хоккею есть серьёзные проблемы, но мы ничего не меняем

    Бывший главный тренер сборной России Владимир Плющев прокомментировал поражение национальной команды от Финляндии на Олимпиаде в Пекине.

  • Ковальчук — о серебре сборной России по хоккею на Играх-2022: спасибо пацанам

    Генеральный менеджер сборной России по хоккею Илья Ковальчук прокомментировал завоевание серебряных медалей на зимней Олимпиаде 2022 года в Пекине.

  • Глава СК Бастрыкин поручил возбудить дела после гибели двух мирных жителей в Донбассе

    Глава Следственного комитета России Александр Бастрыкин поручил возбудить уголовные дела по факту гибели мирных жителей в самопровозглашённой ЛНР после обстрелов со стороны ВСУ.

  • Жамнов заявил, что хочет работать со сборной России по хоккею на ЧМ-2022

    Главный тренер сборной России по хоккею Алексей Жамнов намерен продолжить работу с национальной командой, несмотря на поражение от Финляндии в финале Олимпиады в Пекине.

  • Третьяк — о серебре сборной России по хоккею на Играх-2022: были ошибки и недочёты

    Президент Федерации хоккея России (ФХР) Владислав Третьяк высказался о серебряной медали сборной на зимней Олимпиаде 2022 года в Пекине.

  • Глава Евросовета Мишель: Запад не намерен вечно предлагать России «оливковую ветвь»

    Глава Европейского совета Шарль Мишель на Мюнхенской конференции по безопасности заявил, что Европа не видит признаков деэскалации ситуации вокруг Украины и не планирует вечно предлагать России «оливковую ветвь».

  • Жамнов после поражения от Финляндии заявил, что жизнь на этом не заканчивается

    Главный тренер сборной России по хоккею Алексей Жамнов поделился эмоциями после поражения от Финляндии в финале Олимпиады в Пекине.

  • Украинские военные закрыли пункт пропуска «Счастье» в Донбассе из-за обстрелов

    Украинские военные объявили, что закрыли пункт пропуска «Счастье» в Донбассе из-за обстрелов.

  • Жамнов: все игроки сборной России были достойны выступать на Играх-2022

    Главный тренер сборной России по хоккею Алексей Жамнов прокомментировал завоевание серебряных медалей на зимней Олимпиаде 2022 года в Пекине.

  • Федотов считает, что финские хоккеисты в финале были наглее и дисциплинированнее

    Вратарь сборной России по хоккею Иван Федотов прокомментировал поражение от Финляндии на Олимпиаде в Пекине.

  • В Ростовской области зафиксировали случаи COVID-19 среди прибывших из Донбасса беженцев

    Первые единичные случаи инфицирования коронавирусом среди прибывших из Донбасса беженцев зафиксированы на территории Ростовской области.

  • Голкипер сборной России по хоккею Федотов: тяжело принять, что медаль не золотого отлива

    Вратарь сборной России по хоккею Иван Федотов объяснил, почему снял серебряную медаль после награждения на Олимпиаде в Пекине.

  • Политолог Брутер высказался о планах Британии создать центр борьбы с «пропагандой» России

    Эксперт Международного института гуманитарно-политических исследований Владимир Брутер в беседе с RT прокомментировал заявление министра иностранных дел Великобритании Лиз Трасс о создании информационного центра, целью которого будет борьба с российской «дезинформацией».

  • Хоккеист сборной России Шарипзянов: после поражения от финнов на душе пустота

    Защитник сборной России по хоккею Дамир Шарипзянов поделился эмоциями после поражения от команды Финляндии в финале Олимпиады в Пекине.

  • При атаке украинских военных в районе села Пионерского погибли два мирных жителя

    В результате атаки украинских военных в районе села Пионерского в Донбассе погибли два мирных жителя. Об этом сообщает Народная милиция самопровозглашённой ЛНР.

  • Серебро российских хоккеистов, девятое место в медальном зачёте по итогу Игр, нокаут Корешкова: главное к утру

    Сборная России по хоккею проиграла Финляндии и завоевала серебро Олимпиады в Пекине, в общем медальном зачёте национальная команда стала девятой по итогам Игр, а Андрей Корешков нокаутировал в первом раунде американца Ченси Ренкаунтри на турнире Bellator 274. Об этих и других новостях — в утренней подборке RT.

  • Политолог Бальбек прокомментировал слова премьера Британии Джонсона о ситуации на Украине

    Политолог Руслан Бальбек прокомментировал в беседе с RT заявление премьер-министра Великобритании Бориса Джонсона о том, что ситуация на Украине может стать причиной крупнейшей войны в Европе с 1945 года.

  • Спецназ ДНР обезвредил украинскую диверсионную группу

    Сотрудники спецназа Министерства государственной безопасности (МГБ) самопровозглашённой Донецкой народной республики обезвредили в Донецке украинскую диверсионную группу.

  • Список медалистов заключительного дня Олимпиады в Пекине

    По итогам заключительного, 16-го, дня XXIV зимних Олимпийских игр в Пекине были разыграны пять комплектов наград.

  • В Москве за сутки госпитализированы 699 пациентов с коронавирусом

    За сутки в Москве госпитализировали 699 человек с COVID-19. Об этом свидетельствуют данные столичного оперативного штаба по борьбе с коронавирусом.

  • Корешков нокаутировал американского бойца Ренкаунтри в первом раунде на Bellator 274

    Российский боец смешанного стиля Андрей Корешков одержал победу над американцем Ченси Ренкаунтри на турнире Bellator 274 в Анкасвилле.

  • За сутки в России выявлено 170 699 случаев инфицирования коронавирусом

    За сутки в России выявлено 170 699 случаев инфицирования коронавирусом. Днём ранее зафиксировали 179 147 заболевших.

  • За сутки в России госпитализированы 10 372 человека с COVID-19

    За сутки в России госпитализированы 10 372 человека с коронавирусом, накануне в больницы поступили 15 062 пациента с COVID-19.

  • Матыцин поздравил сборную России по хоккею с серебром Олимпиады в Пекине

    Министр спорта России Олег Матыцин отреагировал на завоевание серебряных медалей национальной хоккейной командой на Олимпиаде в Пекине.

  • Шипачёв: мы ждали ошибки финских хоккеистов и удаления при равном счёте

    Капитан сборной России по хоккею Вадим Шипачёв прокомментировал поражение от Финляндии в финале Олимпиады в Пекине.

  • Синоптик Шувалов спрогнозировал похолодание с 23 февраля в Московском регионе

    Метеоролог, эколог, руководитель прогностического центра «Метео» Александр Шувалов в беседе с RT рассказал о погоде в Москве и Московской области на ближайшую неделю.

  • Сборная России заняла второе место по общему числу медалей на Играх в Пекине

    Сборная России заняла второе место по общему количеству наград на зимней Олимпиаде 2022 года в Пекине.

  • Зеленский назвал трагедией напряжённость в отношениях Украины с Россией

    Президент Украины Владимир Зеленский в интервью CNN назвал трагедией напряжённость в российско-украинских отношениях.

  • Жамнов и его штаб будут готовить сборную России по хоккею к ЧМ-2022

    Президент Федерации хоккея России (ФХР) Владислав Третьяк после поражения от Финляндии в финале Олимпиады рассказал о будущем главного тренера национальной сборной Алексея Жамнова.

  • Иммунолог Крючков рассказал о возможных проблемах с давлением у переболевших COVID-19

    Врач-иммунолог, кандидат медицинских наук Николай Крючков заявил, что у переболевших коронавирусом могут наблюдаться изменения артериального давления.

  • Глава ОКР заявил, что Финляндия была явно сильнее России в финале хоккейного турнира Игр

    Президент Олимпийского комитета России (ОКР) Станислав Поздняков прокомментировал поражение сборной России по хоккею от Финляндии в финале Игр в Пекине.

  • Почти 950 тысяч заявлений на получение российского гражданства подали жители Донбасса

    Депутат Госдумы от Ростовской области Виктор Водолацкий заявил, что всего около 950 тыс. жителей Донбасса подали заявления на получение российского гражданства.

  • Губерниев: финны возили российских хоккеистов почти весь финал

    Известный спортивный комментатор Дмитрий Губерниев поделился эмоциями после поражения сборной России по хоккею от команды Финляндии в финале Олимпиады в Пекине.

  • Финляндия в финале Олимпиады нанесла на 14 бросков больше России

    Сборная Финляндии по хоккею в матче с командой России в финале Олимпийских игр нанесла на 14 бросков больше соперника.

  • Списки и кортежи в Python (с примерами)

    Список и кортеж — это встроенные типы контейнеров, определенные в Python. Объекты обоих этих типов могут хранить разные другие объекты, доступные по индексу. Список, так же как и кортеж, является типом данных последовательности, как и строка. Список, как и кортеж, может хранить объекты, которые не обязательно должны быть одного типа.

    Список : Список представляет собой упорядоченный набор элементов (которые могут быть одного или разных типов), разделенных запятой и заключенных в квадратные скобки.

     В [1]:
    L1=[10,25.5,3+2j,"Привет"]
    L1
    Выход[1]:
    [10, 25.5, (3+2j), 'Привет'] 

    В приведенном выше списке каждый элемент относится к разным типам. Кроме того, каждый элемент доступен по позиционному индексу, начиная с 0. Следовательно, L1[2] вернет 25,5

     В [2]:
    Л1[1]
    Выход[2]:
    25.5 

    Кортеж : Кортеж похож на список. Единственное отличие состоит в том, что элементы одного или разных типов, разделенные запятыми, заключаются в круглые скобки. Отдельные элементы следуют нулевому индексу, как в списке или строке.

     В [3]:
    T1=(10,25.5,3+2j,"Привет")
    Т1
    Выход[3]:
    (10, 25,5, (3+2j), «Здравствуйте»)
    В [4]:
    Т1[1]
    Выход[4]:
    25.5 

    Разница между списком и кортежем:

    Очевидная разница заключается в использовании квадратных скобок [] в списке и круглых скобок () в кортеже в качестве вложений. Однако важным отличием является то, что List является изменяемым объектом, а Tuple — неизменяемым объектом.

    Если содержимое объекта может быть изменено на месте после его создания, это изменчивый объект.С другой стороны, любая операция над неизменяемым объектом, которая пытается изменить его содержимое, запрещена.

    В приведенном выше примере любому элементу в списке L1 может быть присвоено другое значение. Изменим значение элемента при index=2 с 3+2j на 1.22E-5

     В [5]:
    L1[2]=1,22E-5
    L1
    Выход[5]:
    [10, 25.5, 1.22e-05, 'Hello'] 

    Встроенный класс List имеет различные методы, которые позволяют выполнять различные операции над объектом List (такие как вставка, удаление, сортировка и т. д.)

    Однако любая такая операция невозможно с объектом Tuple.Если мы попытаемся изменить T1, изменив значение элемента с индексом = 2 на 1.22E-5, возникнет исключение TypeError.

     В [6]:
    Т1[2]=1,22Е-5
    Т1
    -------------------------------------------------- -------------------------
    TypeError                                Traceback (последний последний вызов)
     в ()
    ----> 1 T1[2]=1,22E-5
    2 Т1
    TypeError: объект 'tuple' не поддерживает назначение элемента 

    Следующие встроенные функции могут использоваться вместе со списком, а также с кортежем.

    len() Возвращает количество элементов в списке/кортеже
    max() Если список/кортеж содержит числа, будет возвращено наибольшее число. Если список/кортеж содержит строки, будет возвращена последняя в алфавитном порядке.
    min() Если список/кортеж содержит числа, будет возвращено наименьшее число. Если список/кортеж содержит строки, будет возвращена та, которая идет первой в алфавитном порядке.
    sum() Возвращает сложение всех элементов в списке/кортеже
    sorted() сортирует элементы в списке/кортеже
    97008 In [] L1=[10,30,50,20,40] Т1=(10,50,30,40,20) печать (длина (L1)) печать (длина (T1)) print(‘макс. L1’, max(L1)) print(‘макс. из T1’, макс.(T1)) print(‘мин из L1’, мин(L1)) print(‘мин из T1’, мин(T1)) print(‘сумма L1’, сумма(L1)) print(‘сумма T1’, сумма(T1)) print(‘L1 в порядке сортировки’, sorted(L1)) print(‘T1 в порядке сортировки’, sorted(T1)) Выход[7]: 5 5 макс L1 50 макс Т1 50 мин L1 10 мин Т1 10 сумма L1 150 сумма T1 150 L1 в порядке сортировки [10, 20, 30, 40, 50] T1 в отсортированном порядке [10, 20, 30, 40, 50]

    Если элементы в списке/кортеже являются строками, функции min() и max() возвращают строку, которая идет первой/последней в алфавитном порядке. Если список/кортеж состоит из числовых и нечисловых значений, возникает исключение TypeError, поскольку сравнение непохожих объектов невозможно.

     В [8]:
    L2=['ручка', 'книга','компьютер', 'стол', 'файл']
    T2=('ручка', 'книга','компьютер', 'стол', 'файл')
    print('макс. L2', max(L2))
    print('макс. T2', max(T2))
    print('мин из L2', мин(L2))
    print('мин из T2', мин(T2))
    макс таблицы L2
    макс таблицы T2
    мин книги L2
    мин книги Т2
    Выход [9]:
    L3=[100, "сотня", 0.001]
    print('макс. L3', max(L3))
    -------------------------------------------------- -------------------------
    TypeError                                Traceback (последний последний вызов)
     в ()
    1 L3=[100, "сотня", 0,001]
    ----> 2 print ("макс. L3", макс.(L3))
    
    TypeError: '>' не поддерживается между экземплярами 'str' и 'int' 

    Встроенный класс списка имеет следующие методы для выполнения различных операций над объектом списка.Следующие методы позволяют добавлять новые элементы в список.

    Append () Добавляет объект до конца списка
    копия () делает неглубокую копию списка
    COUNT () Возврат Количество вхождений стоимости в списке
    extend() расширяет список, добавляя элементы из другого списка/кортежа
    insert() вставляет объект в список перед заданным индексом L1=[10,30,50,20,40] Л1.append(100) #добавляет новый элемент печать («после добавления», L1) L1.insert(2,30) # вставляет новое значение в индекс печать («после вставки», L1) с=L1.счет(30) печать («количество до 30», с) L1.продлить([11,22,33]) печать («после расширения», L1) Выход [10]: после добавления [10, 30, 50, 20, 40, 100] после вставки [10, 30, 30, 50, 20, 40, 100] количество 30 2 after extend [10, 30, 30, 50, 20, 40, 100, 11, 22, 33]

    Следующие методы используются для удаления элементов из заданного списка.

    pop() удаляет и возвращает элемент по заданному индексу. Вызывает IndexError, если список пуст или индекс находится за пределами допустимого диапазона.
    remove() удаляет первое вхождение значения в списке. Вызывает ValueError, если значение отсутствует.
    clear() удалить все элементы из списка
     В [11]:
    р=L1.поп()
    print ('элемент выскочил:', p)
    print ('список после извлечения', L1)
    Л1.удалить(100)
    print ('после удаления значения:',L1)
    L1.очистить()
    print ('все очищено:', L1)
    Выход [11]:
    предмет выскочил: 33
    список после извлечения [10, 30, 30, 50, 20, 40, 100, 11, 22]
    после удаления значения: [10, 30, 30, 50, 20, 40, 11, 22]
    Все очищено: [] 

    следующие методы переставки последовательности элементов в списке

    обратного () обратных () обратности в список на месте
    Сортировка () сортирует список на месте
     
     В [12]:
    L1=[10, 30, 30, 50, 20, 40, 11, 22]
    print('исходный список:', L1)
    Л1. обратный()
    print('после обращения:',L1)
    L1.sort()
    print ("отсортированный список: ", L1)
    Выход [12]:
    исходный список: [10, 30, 30, 50, 20, 40, 11, 22]
    после реверса: [22, 11, 40, 20, 50, 30, 30, 10]
    отсортированный список: [10, 11, 20, 22, 30, 30, 40, 50] 

    Если вы помните, кортеж — неизменный объект. Следовательно, в классе кортежей нет аналогичных методов, выполняющих вставку, удаление или перестановку элементов.

    Функции преобразования

    Все объекты типа последовательности (строка, список и кортеж) могут быть взаимно преобразованы.Встроенные функции Python для этой цели объясняются ниже:

    list() преобразует кортеж или строку в список
    tuple() преобразует список или строку в кортеж ) возвращает строковое представление объекта списка или кортежа
     В [13]:
    L1=[10, 30, 30, 50, 20, 40, 11, 22]
    T1=кортеж(L1)
    печать (Т1)
    (10, 30, 30, 50, 20, 40, 11, 22)
    В [14]:
    Т1=(10,50,30,40,20)
    L1=список(T1)
    печать (L1)
    [10, 50, 30, 40, 20]
    В [15]:
    с1 = "Привет"
    L2=список(s1)
    print('строка для списка:', L2)
    T2=кортеж(s1)
    print('строка в кортеж', T2)
    строка для списка: ['H', 'e', ​​'l', 'l', 'o']
    строка в кортеж ('H', 'e', ​​'l', 'l', 'o')
    В [16]:
    s1=стр(L1)
    s2=стр(T1)
    print('список в строку',s1)
    print('кортеж в строку',s2)
    список в строку [10, 50, 30, 40, 20]
    кортеж в строку (10, 50, 30, 40, 20) 

    Когда список или кортеж преобразуется в строку функцией str(), строковое представление не совсем похоже на слово, а представляет собой список или кортеж, заключенный в одинарные кавычки .Чтобы сформировать непрерывную последовательность символов в списке, используйте метод join() строкового объекта.

     В [17]:
    L2=['Н', 'е', 'л', 'л', 'о']
    s1=стр(L2)
    с1
    Вышли[17]:
    "['Привет']"
    В [18]:
    s2="".присоединиться(L2)
    print('строка из элементов списка:', s2)
    строка из элементов списка: Hello 

    В этой главе мы обсудили объекты списка и кортежа, их функции и методы. В следующей главе мы узнаем о типе данных словаря.

    кортежей Python: пошаговое руководство

    Кортежи Python — это структура данных, в которой хранится упорядоченная последовательность значений.Кортежи неизменны. Это означает, что вы не можете изменить значения в кортеже. Кортежи определяются с помощью круглых скобок.


    Кортежи — это основная структура данных в Python. Они позволяют хранить упорядоченную последовательность элементов. Например, вы можете использовать кортеж для хранения списка имен сотрудников. Вы можете использовать кортеж для хранения списка вкусов мороженого, имеющихся в магазине мороженого.

    В этом руководстве мы рассмотрим основы типа данных кортеж. Мы обсудим его назначение и приведем примеры, чтобы продемонстрировать, как вы можете работать с этим типом данных.

    Понимание кортежей Python

    Кортежи — это неизменяемые упорядоченные списки данных, в отличие от списков. Списки изменяемы, что означает, что вы можете изменить содержимое списка. Отдельные значения в кортеже называются элементами 90 117. Кортежи могут хранить данные любого типа.

    Кортеж — это последовательность элементов, разделенных запятыми. Эта последовательность заключена в круглые скобки (()) . Создадим кортеж:

     ice_cream_flavors = («Шоколад», «Ваниль», «Мята», «Клубника», «Шоколад») 

    Когда мы выводим наш кортеж на консоль с помощью функции print() , мы увидим кортеж, который мы изначально объявили.Значения в нашем кортеже разделены запятыми:

    Наш код возвращает следующее:

     ("Шоколад", "Ваниль", "Мята", "Клубника", "Шоколад") 

    Кортежи хранят данные с общей темой, похожей на списки. В приведенном выше примере наш кортеж хранит коллекцию вкусов мороженого. Он также может хранить, например, список оценок учащихся или список телефонов, проданных в магазине электроники.

    81% участников заявили, что после посещения буткемпа они стали более уверенными в своих перспективах работы в сфере технологий.Подберите себе буткемп сегодня.

    Найдите свой матч для буткемпа

    Средний выпускник буткемпа тратит менее шести месяцев на смену карьеры, от начала буткемпа до поиска своей первой работы.

    Начните свою карьеру сегодня

    Кортежи похожи на списки Python, но с одним большим отличием: вы не можете изменять кортеж. Вы должны использовать кортежи только тогда, когда хотите, чтобы список оставался прежним. Если бы мы хотели добавить вкусы к нашему списку вкусов мороженого выше, обычный список, вероятно, был бы лучше.Это потому, что мы можем изменить содержимое списка по мере изменения вкуса нашего мороженого.

    Как получить доступ к элементам кортежа

    Каждый элемент в кортеже имеет уникальное значение индекса, начинающееся с нуля. Значения индекса продолжаются с шагом в единицу. Вы можете получить доступ к отдельному элементу в кортеже, сославшись на значение индекса элемента.

    Вот значения индекса для кортежа ice_cream_flavors , который мы объявили выше:

    Chocolate Vanilla Mint Clinberry Choc-Chip
    1 1 2 3 4

    Теперь мы знаем значения индекса для каждого элемента, мы можем получить доступ к одному элементу индивидуально.Следующий код позволяет нам получить элемент со значением индекса 3 :

     print(ice_cream_flavors[3]) 

    Наш код возвращает: Strawberry . Клубника — это предмет, значение индекса которого равно 3.

    Каждый элемент в кортеже имеет отрицательное значение индекса. Эти значения позволяют вести обратный отсчет от конца кортежа. Они начинаются с -1 . Использование отрицательного порядкового номера может быть более удобным, если вы работаете с длинным списком. Это потому, что вы можете работать в обратном направлении с конца списка.

    Вот отрицательные значения индекса для нашего кортежа ice_cream_flavors :

    Найдите свой тренировочный лагерь

    Chocolate Tanilla MINT Clinberry Choc-Chip
    -5 -4 -3 -2 -1
    -1