IKiss
Читая Лутца. Глава 2
Продолжаем воскресное чтение в сельской школе. Во второй главе говорится о том, как интерпритатор выполняет программы.
Компиляция в байт-код
После запуска программы Python внутренне и почти полностью скрыто от нас сначала компилирует твой хэллоуворлд в формат, известный как байт-код. Трансляция происходит со скоростью выполнениня, а уже транслированный байт-код выполняется быстрее, чем если выполнять исходный код.
Если ты задавался вопросом, что за папка pycache, то знай, она нужна не только для того, чтобы добавлять ее в гитигнор, она содержит файлы байт-кода .рус которые сохраняются и потом исполняются без повторной трансляции. Отдельно упоминается, что кэшируются только файлы с байт-кодом импортируемых файлов, .рус для сценариев верхнего уровня (мэйн.пу) не сохраняются. То есть речь идет об оптимизации импорта.
Заново придется их компилировать в двух случаях - ты изменил исходный код и ты обновил питухон.
Затем уже готовые или только что созданные файлы с байт-кодом передается на исполнение PVM - виртуальной машине питон.
Влияние на производительность
Далее афтор говорит о том, что эта модель выполнения хреново сказывется на производительности, но норм сказывается на удобстве разработки, так как среда разработки и среда выполнение - это одно и то же лицо и можно ставить эксперименты по выводу хэллоуворлда на экран не компилируя код каждый раз.
Реализации питона
Существует много реализаций языка, тот, что мы подразумеваем, гордо говоря, что пишем на питоне - CPython, остальные - полное говно и должны умереть.
Инструменты оптимизации выполнения
Cython: гибрид Python/C представляет собой гибридный язык, который объединяет код Python с возможностью вызова функций С.
Shed Skin: пытается транслировать исходный код Python в код C++, который затем с помощью имеющегося компилятора C++ компилируется в машинный код.
Система Psyco: тоже пытается сделать бедный питухон быстрее.
Фиксированные двоичные файлы
Когда ты пишешь в гугле “настоящий компилятор Python скачать бесплатно без смс", ты скорее всего ищешь способ генерации автономных двоичных исполняемых файлов из своих программ Python.
С помощью сторонних инструментов со встроенным майнером, которые можно найти в Интернете, возможно превращение программ Python в настоящие исполняемые файлы, которые называются фиксированными двоичными файлами.
Фиксированные двоичные файлы объединяют в единственный пакет байт-код твоих файлов программ вместе с интерпретатором и любыми необходимыми файлами поддержки. На выходе ты получаешь привычный экзешник. Зачем так делать - хрен знает.
В следующий раз поговорим о том, как программы выполняются с точки зрения пользователя, т.е. в какое окошко писать, чтобы сделать свой инстаграм. Подписывайтесь на канал 'Программирование на python' на Пикабу, ставьте лайк, жмите колокольчик и вот это вот всё.
Читая Лутца
"Сколько, епта?" - Платон.
Только что я привел фразу великого философа, которую он изрек, узнав размер книги "Изучаем питон". А потом ему сообщили, что книга в двух томах.
Рано или поздно, у каждого, кто самопровозгласил себя программистом не имея высшего образования, возникает идея структурировать свои знания о фундаментальных основах языка, на котором он пишет.
Вот вроде ты уже что-то знаешь и умеешь, делаешь шабашки, телеграм-боты и сервера приложений с включениями твоего быдлокода успешно засоряют каналы передачи данных, но чего-то не хватает. Понимания того, как все это устроено под капотом. И тогда ты начинаешь читать его.
Проблема, с которой ты сталкиваешься - это то, что ты уже знаешь 99% того, что читаешь, и это не делает процесс чтения интереснее.
Я решил переложить эту проблему на ваши плечи и, читая данное художественное произведение, делать пересказ, стараясь не вносить своего компетентного мнения, и надеясь, что это никто никогда не прочитает.
И так, этим открываю наш книжный клуб.
Глава 1. Питухон в вопросах и ответах.
В главе по большей части водичка, видимо автору показалось мало 800 страниц и он решил добить хронометраж, но тем не менее: почему люди используют Python?
Автор предлагает следующие объяснения этого феномена: качество программного обеспечения, продуктивность труда разработчиков, переносимость программ, много библиотек, интеграция с другими системами и бла бла бла.
Что можно написать на питоне после того, как покончено с хэллоуворлдом, крестиками-ноликами и задачей на сумму двух элементов на литкоде?
Вот несколько областей практического применения:
Утилитки. Программы Python могут производить поиск в файлах и деревьях каталогов, запускать другие программы, организовывать параллельную обработку с помощью процессов и потоков и т.д.
Десктопные приложения. Очень "полезная" вещь в 21 веке.
Написание сценариев для Интернета. Это уже интереснее. На питоне реально пишут бэкэнд и реально его используют. Достаточно упомянуть, что бэк интаграммчика, реддита и ютуба, написаны на Джанге, например.
Программирование для баз данных. Очень удобно, есть библиотеки для всех популярных СУБД. Если ты хочешь прикрутить к телеграмм-боту с анекдотами БД и сам написать все запросы, то сделаешь это очень просто. Так же есть орм, если не хочешь.
Быстрое прототипирование. У тебя есть идея для модели машинного обучения, управляющей ядерными ракетами? Чего ты ждешь, реализуй ее на питоне за один рабочий день. Если модель не уничтожит человечество, перепишешь ее на плюсах.
Численное и научное программирование. Тут добавить нечего. Если ты хоть раз прикоснулся к пандас, то всю жизнь смотреть на тех, кто делает свои сводные таблицы в экселе с легкими нотками пренебрежения.
В остальной части главы говорится о том, что питухон легок в изучении, мощен, легок в использовании и так далее.
На сегодня всё, в следующем выпуске нашей передачи поговорим о том, как питон выполняет программы и как работает интерпретатор.
У меня нет канала в телеграмме, так что подписывайтесь на сообщество "Программирование на python" на пикабу.
До новых встреч.
Он существует. Фронтэнд на python
А вы знали, что не обязательно быть джава-скриптизёром для того, чтобы писать веб-страницы, так как уже год существует такой проект, как pyscript, позволяющий добавлять скрипты с хэллоуворлдом на родном питухоне прямо в ваш index.html, и создал его никто иной, как чуваки, которые развивают Анаконду.
На сайте проекта есть много примеров хэллоуворлдов с использованием фреймворка, там же можно ознакомиться с кодом примера, вот например веб-приложение листа задач на день:
Для того, чтобы убедиться, что это не сон, создадим свое приложение, которое будет отображать очень важные показатели деятельности нашего предприятия.
В результате титанических двухминутных усилий было создано приложение на джанго, которое в ответ на
Возращает список важных показателей:
Создаем страницу, где прямо в html на питухоне пришем примерно следующее(фрагмент):
После молниеносной тридцатисекундной загрузки страницы
Мы понимаем, что будущее наступило, и теперь необязательно пялиться в скучный постман, а можно создавать свои веб-приложения не зная никаких языков программирования зная только питон.
Ответ на пост «Вы уже видели новый телефон? Пушка"!»
Да, видели, вот уже и свежее видео с тестами нового телефона подоспело от популярного нынче обзорщика товаров.
Главное нововведение патча 11.8
Марк Йеттер сообщил в своем твиттере, что в обновлении 11.8 будет добавлена возможность покупать билеты банов, которые дадут игроку возможность банить более одного чемпиона за матч.
Встречайте, новый чемпион Лиги Легенд - швея Гвен
Будь в курсе последних новостей Лиги Легенд, публикуемых в телеграм-канале русскоязычного сообщества Лиги @russialol.
Превью патча 11.7
Марк Йеттер в своем твиттере выкатил превью патча 11.7, согласно которому вскоре нас ждут следующие изменения:
Более подробные описания изменений ожидаются уже завтра здесь и в телеге русскоязычного сообщества Лиги Легенд.