Перейти к содержанию

2022

Можно ли написать операционную систему на Python?

Можно ли написать операционную систему на Python?

Можно ли написать операционную систему на Python?

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

Точка входа

Точка входа

В программах, написанных на Python часто можно увидеть такую конструкцию:

if __name__ == "__main__":

Это точка входа — место, с которого начинает выполняться ваша программа.

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

Тонкости чтения из текстовых файлов в Python

Тонкости чтения из текстовых файлов в Python

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

Мы обычно никогда не заморачиваемся с нюансами применения той или иной функции или популярной конструкции Python, бездумно используя первый же попавшийся, взятый в бездонных недрах Internet, работоспособный вариант этих инструментариев. > Примечание: С целью закрепления материала посредством выполнения приведенных в этой статье практических примеров, рекомендуется сначала скачать соответствующие текстовые (Markdown) файлы и , а затем сохранить их в той директории, где вы собираетесь далее работать.

Присваивания переменных внутри выражений Python оператором Walrus

Присваивания переменных внутри выражений Python оператором Walrus

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

Возможно, существованием именно таких неоднозначностей при применении данного оператора, в частности, было продиктовано бурное обсуждение этого новшества, по итогам которого Гвидо ван Россум (автор Python) все-таки принял его в июле 2018 году и, с тех пор объявил, что устраняется от роли главы проекта – доброжелательного диктатора (BDFL). Однако в данном случае переменная representative, показывая лишь какой элемент списка был обработан последним, не является информативной, поскольку название Гамбург содержит менее десяти символов и не удовлетворяет заданному в программе условию.

Работа с ZIP архивами с помощью Python

Работа с ZIP архивами с помощью Python

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

Но, следует учесть, что для получения максимальной отдачи от этой статьи, вы должны иметь представление об основах работы с файлами, использовании with инструкции и обработки путей для файловой системы с помощью pathlib, а также быть знакомы с объектно-ориентированным программированием и знать работать с классами. Поэтому, для гарантии использования в вашей программе действительно корректного ZIP-файла, работающий с ним ZipFile класс вы можете предварительно обернуть в оператор try ... except и, таким образом, перехватить соответствующее BadZipFile исключение:

На каком языке написана игра Super Mario Brothers?

На каком языке написана игра Super Mario Brothers?

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

Мы хорошо помним, что игра Super Mario продавалась в виде игрового картриджа для видеоприставки Nintendo Entertainment System на основе 8-битного микропроцессора Ricoh 2A03. Чтобы заставить этот чип воспроизводить увлекательные игры, необходимо было создавать код из прямого набора команд этому процессору.

Обработка изображений с помощью библиотеки Pillow в Python

Обработка изображений с помощью библиотеки Pillow в Python

Вряд ли кто-то из нас – Python разработчиков не возжелал бы прихвастнуть среди коллег или при устройстве на работу наличием в своем портфолио крутого ПО, работающего с графикой и не уступающего по возможностям (хотя бы частично) супернавороченным редакторам, подобным PhotoShop.

На данный момент такие растровые графические редакторы, как PhotoShop предоставляют десятки подобных фильтров, позволяющих применять к изображениям самые невероятные эффекты начиная от различных способов размытия, определения границ, повышения резкости, и заканчивая разными искажениями, шумами, стилизациями и т.д. Если же мы захотим углубиться в более продвинутые методы обработки изображений, например, для создания приложений в сфере машинного обучения и компьютерного распознавания, то Pillow в этом случае может как нельзя кстати пригодится в качестве первой ступени для изучения более специализированных библиотек типа OpenCV или scikit-image.

Обратные строки и инструменты работы с ними в Python

Обратные строки и инструменты работы с ними в Python

Строки – один из важных и очень популярных элементов программирования в Python.

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

Как написать генератор-выражения (generator expression)

Как написать генератор-выражения (generator expression)

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

Таким образом, Python генераторы являются незаменимым инструментарием практически во всех тех случаях, когда мы имеем дело с очень большими, почти бесконечными последовательностями, которые вследствие их размеров, зачастую не только невозможно загрузить в оперативную память, но и записать на жесткий диск. py3 print(next(kvadraty)) # вызов каждого последующего элемента генератора-выражения pycon Traceback (most recent call last): File "<stdin>", line 1, in <module> StopIteration # исключение, останавливающее итерацию

Основные строковые методы, используемые в Python

Основные строковые методы, используемые в Python

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

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