Иголки в стоге сена в Python(ч.3)
В 3, как вы, возможно, уже поняли, после 5-го элемента ("that") в списке отсутствует запятая. Итак, с помощью неявной конкатенации строковых литералов,
#theory // Just Python & Max
В 3, как вы, возможно, уже поняли, после 5-го элемента ("that") в списке отсутствует запятая. Итак, с помощью неявной конкатенации строковых литералов,
>>> ten_words_list
['some', 'very', 'big', 'list', 'thatconsists', 'of', 'exactly', 'ten', 'words']#theory // Just Python & Max
Иголки в стоге сена в Python(ч.4)
В 4-м фрагменте на AssertionError был поднят вопрос, потому что вместо утверждения отдельного выражения a == b мы утверждаем весь кортеж. Следующий фрагмент прояснит ситуацию,
#theory // Just Python & Max
В 4-м фрагменте на AssertionError был поднят вопрос, потому что вместо утверждения отдельного выражения a == b мы утверждаем весь кортеж. Следующий фрагмент прояснит ситуацию,
>>> a = "python"
>>> b = "javascript"
>>> assert a == b
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AssertionError
>>> assert (a == b, "Значения не равны")
<stdin>:1: SyntaxWarning: assertion is always true, perhaps remove parentheses?
>>> assert a == b, "Значения не равны"
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AssertionError: Values are not equal#theory // Just Python & Max
Иголки в стоге сена в Python(ч.5)
Что касается пятого фрагмента, большинство методов, которые изменяют элементы объектов последовательности / сопоставления, такие как list.append, dict.update, list.sort и т.д. измените объекты на месте и верните None. Обоснование этого заключается в повышении производительности за счет отказа от создания копии объекта, если операция может быть выполнена на месте.
#theory // Just Python & Max
Что касается пятого фрагмента, большинство методов, которые изменяют элементы объектов последовательности / сопоставления, такие как list.append, dict.update, list.sort и т.д. измените объекты на месте и верните None. Обоснование этого заключается в повышении производительности за счет отказа от создания копии объекта, если операция может быть выполнена на месте.
#theory // Just Python & Max
Иголки в стоге сена в Python(ч.6)
Последний должен быть довольно очевидным, изменяемым объектом (например list) может быть изменен в функции, и переназначение неизменяемого (a -= 1) не является изменением значения.
#theory // Just Python & Max
Последний должен быть довольно очевидным, изменяемым объектом (например list) может быть изменен в функции, и переназначение неизменяемого (a -= 1) не является изменением значения.
#theory // Just Python & Max
Совет на ближайшие годы — изучайте ВАЙБ-КОДИНГ
ИИ уже пишет код, чинит баги, генерирует тесты, документацию и помогает запускать продукты быстрее, чем это делали классические команды разработки. И это уже не "будущее когда-нибудь", а реальность, которая меняет рынок уже сегодня
И те, кто научится вайбкодить сейчас, будут увереннее конкурировать на рынке и зарабатывать больше тех, кто по-прежнему делает всё вручную.
Стартовать с нуля поможет канал Вайб-кодинг. Там ребята круглосуточно мониторят более 320 российских и зарубежных источников и публикуют только главное: релизы, инструменты, гайды, курсы и практические кейсы.
Подписывайтесь, нас уже 30 тысяч: @vibecoding_tg
ИИ уже пишет код, чинит баги, генерирует тесты, документацию и помогает запускать продукты быстрее, чем это делали классические команды разработки. И это уже не "будущее когда-нибудь", а реальность, которая меняет рынок уже сегодня
И те, кто научится вайбкодить сейчас, будут увереннее конкурировать на рынке и зарабатывать больше тех, кто по-прежнему делает всё вручную.
Стартовать с нуля поможет канал Вайб-кодинг. Там ребята круглосуточно мониторят более 320 российских и зарубежных источников и публикуют только главное: релизы, инструменты, гайды, курсы и практические кейсы.
Подписывайтесь, нас уже 30 тысяч: @vibecoding_tg
Разбиения в Python
На первый взгляд может показаться, что разделителем по умолчанию для split является один пробел ' ', но согласно документации:
Если sep не указан или есть None, применяется другой алгоритм разделения: последовательные пробельные строки рассматриваются как единый разделитель, и результат не будет содержать пустых строк в начале или в конце, если строка содержит начальный или конечный пробел. Следовательно, возвращается разделение пустой строки или строки, состоящей только из пробелов с разделителем None []. Если задан sep, последовательные разделители не группируются вместе и считаются разделителями пустых строк (например, '1,,2'.split(',') возвращает ['1', '', '2']). Возвращает разделение пустой строки указанным разделителем [''].
#theory // Just Python & Max
На первый взгляд может показаться, что разделителем по умолчанию для split является один пробел ' ', но согласно документации:
Если sep не указан или есть None, применяется другой алгоритм разделения: последовательные пробельные строки рассматриваются как единый разделитель, и результат не будет содержать пустых строк в начале или в конце, если строка содержит начальный или конечный пробел. Следовательно, возвращается разделение пустой строки или строки, состоящей только из пробелов с разделителем None []. Если задан sep, последовательные разделители не группируются вместе и считаются разделителями пустых строк (например, '1,,2'.split(',') возвращает ['1', '', '2']). Возвращает разделение пустой строки указанным разделителем [''].
#theory // Just Python & Max
Дикий импорт в Python (ч.1)
Часто рекомендуется не использовать импорт подстановочных знаков. Первая очевидная причина этого заключается в том, что при импорте подстановочных знаков имена с начальным подчеркиванием не импортируются. Это может привести к ошибкам во время выполнения.
#theory // Just Python & Max
Часто рекомендуется не использовать импорт подстановочных знаков. Первая очевидная причина этого заключается в том, что при импорте подстановочных знаков имена с начальным подчеркиванием не импортируются. Это может привести к ошибкам во время выполнения.
#theory // Just Python & Max
Дикий импорт в Python (ч.2)
Если бы мы использовали from ... import a, b, c синтаксис, прошлого NameError не произошло бы.
#theory // Just Python & Max
Если бы мы использовали from ... import a, b, c синтаксис, прошлого NameError не произошло бы.
#theory // Just Python & Max
Дикий импорт в Python (ч.3)
Если вы действительно хотите использовать импорт по шаблону, то вам нужно будет определить список all в вашем модуле, который будет содержать список общедоступных объектов, которые будут доступны, когда мы выполним импорт по шаблону.
#theory // Just Python & Max
Если вы действительно хотите использовать импорт по шаблону, то вам нужно будет определить список all в вашем модуле, который будет содержать список общедоступных объектов, которые будут доступны, когда мы выполним импорт по шаблону.
#theory // Just Python & Max
Полуночного времени не существует в Python?
До Python 3.5 логическое значение для datetime.time объекта считалось равным False, если оно представляло полночь по UTC. Он подвержен ошибкам при использовании if obj: синтаксиса для проверки, является ли obj нулевым или каким-либо эквивалентом "пустого".
#theory // Just Python & Max
До Python 3.5 логическое значение для datetime.time объекта считалось равным False, если оно представляло полночь по UTC. Он подвержен ошибкам при использовании if obj: синтаксиса для проверки, является ли obj нулевым или каким-либо эквивалентом "пустого".
#theory // Just Python & Max
Все ли разобрано? (ч.1)
Sorted Метод всегда возвращает список, а сравнение списков и кортежей всегда возвращает False результат на Python.
В отличие от этого, sortedметод reversed возвращает итератор. Почему? Потому что сортировка требует, чтобы итератор был либо изменен на месте, либо использовал дополнительный контейнер (список), тогда как реверсирование может просто работать путем повторения от последнего индекса к первому.
#theory // Just Python & Max
Sorted Метод всегда возвращает список, а сравнение списков и кортежей всегда возвращает False результат на Python.
В отличие от этого, sortedметод reversed возвращает итератор. Почему? Потому что сортировка требует, чтобы итератор был либо изменен на месте, либо использовал дополнительный контейнер (список), тогда как реверсирование может просто работать путем повторения от последнего индекса к первому.
#theory // Just Python & Max
Все ли разобрано? (ч.2)
Таким образом, во время сравнения sorted(y) == sorted(y) первый вызов sorted() будет использовать итератор y, а следующий вызов просто вернет пустой список.
#theory // Just Python & Max
Таким образом, во время сравнения sorted(y) == sorted(y) первый вызов sorted() будет использовать итератор y, а следующий вызов просто вернет пустой список.
#theory // Just Python & Max
Ладно, Python, ты можешь заставить меня летать?
antigravity модуль является одним из немногих пасхальных яиц, выпущенных разработчиками Python.
import antigravity открывает веб-браузер, указывающий на классический комикс XKCD о Python.
Ну, это еще не все. Внутри пасхального яйца есть еще одно пасхальное яйцо. Если вы посмотрите на код, там определена функция, предназначенная для реализации алгоритма геохеширования XKCD.
#theory // Just Python & Max
antigravity модуль является одним из немногих пасхальных яиц, выпущенных разработчиками Python.
import antigravity открывает веб-браузер, указывающий на классический комикс XKCD о Python.
Ну, это еще не все. Внутри пасхального яйца есть еще одно пасхальное яйцо. Если вы посмотрите на код, там определена функция, предназначенная для реализации алгоритма геохеширования XKCD.
#theory // Just Python & Max
goto но почему?
Рабочая версия goto на Python была анонсирована в качестве первоапрельской шутки 1 апреля 2004 года.
Текущие версии Python не имеют этого модуля.
Хотя он и работает, но, пожалуйста, не используйте его. Вот причина, почему goto его нет в Python.
#theory // Just Python & Max
Рабочая версия goto на Python была анонсирована в качестве первоапрельской шутки 1 апреля 2004 года.
Текущие версии Python не имеют этого модуля.
Хотя он и работает, но, пожалуйста, не используйте его. Вот причина, почему goto его нет в Python.
#theory // Just Python & Max
Замени собой целую команду
В 2026 году «туннельное зрение» — главный барьер для развития. Читая каналы только в своей сфере, мы перестаем видеть нестандартные решения, которые уже давно используют в соседних нишах.
Самые интересные гипотезы рождаются на стыке AI и IT. Идея, подсмотренная в канале по разработке, может дать толчок вашему проекту в нейрогенерации, и наоборот. Я собрал подборку экспертов, которые помогают выйти за рамки одной ниши.
Внутри:
Подписывайтесь на экспертов — это самый простой способ выйти за рамки привычной ниши и собрать уникальный стек компетенций.
Подписка в 1 клик:
https://t.me/addlist/nKvP4qy8SxtmM2Vi
В 2026 году «туннельное зрение» — главный барьер для развития. Читая каналы только в своей сфере, мы перестаем видеть нестандартные решения, которые уже давно используют в соседних нишах.
Самые интересные гипотезы рождаются на стыке AI и IT. Идея, подсмотренная в канале по разработке, может дать толчок вашему проекту в нейрогенерации, и наоборот. Я собрал подборку экспертов, которые помогают выйти за рамки одной ниши.
Внутри:
1. ИИ и генерация: фишки новых моделей, рабочие связки и качественное создание контента.
2. Кодинг и прикладной IT: как автоматизировать задачи и упрощать рабочий процесс.
3. Индустрия: какие инструменты сейчас действительно полезны, а что — просто хайп.
Подписывайтесь на экспертов — это самый простой способ выйти за рамки привычной ниши и собрать уникальный стек компетенций.
Подписка в 1 клик:
https://t.me/addlist/nKvP4qy8SxtmM2Vi
Приготовьтесь!
future Модуль обычно используется для предоставления функций из будущих версий Python. Однако "будущее" в этом конкретном контексте звучит иронично.
Это пасхальное яйцо, посвященное чувствам сообщества по этому вопросу.
Код на самом деле присутствует здесь, в future.c файле.
Когда компилятор CPython сталкивается с инструкцией future, он сначала запускает соответствующий код в future.c, прежде чем рассматривать его как обычную инструкцию import .
#theory // Just Python & Max
future Модуль обычно используется для предоставления функций из будущих версий Python. Однако "будущее" в этом конкретном контексте звучит иронично.
Это пасхальное яйцо, посвященное чувствам сообщества по этому вопросу.
Код на самом деле присутствует здесь, в future.c файле.
Когда компилятор CPython сталкивается с инструкцией future, он сначала запускает соответствующий код в future.c, прежде чем рассматривать его как обычную инструкцию import .
#theory // Just Python & Max
Пока вы спите – ИИ-агент закрывает задачи за вас
ChatGPT, Claude и DeepSeek уже стали базой. Но главный тренд 2026 года – автономные AI-агенты, которые не просто отвечают на запросы, а сами выполняют ваши рабочие задачи и рутину.
На бесплатном практикуме команда Зерокодера покажет, как установить и настроить OpenClaw – локального AI-агента для работы и автоматизации задач.
В эфире покажут:
– как установить и настроить OpenClaw;
– как автоматизировать рутину и сократить количество ручных действий;
– как собрать мощнейшую рабочую связку Claude + OpenClaw + Cursor;
– как встроить AI-агента в текущую работу и ускорить процессы;
– как ускорить текущие процессы без найма дополнительных людей.
Это не вебинар «с нуля в IT» – это практикум для тех, кто уже использует ИИ и хочет выйти на следующий уровень.
🎁 Бонус: гайд по установке и настройке OpenClaw на вашем ПК.
Бесплатный практикум – по ссылке.
ChatGPT, Claude и DeepSeek уже стали базой. Но главный тренд 2026 года – автономные AI-агенты, которые не просто отвечают на запросы, а сами выполняют ваши рабочие задачи и рутину.
На бесплатном практикуме команда Зерокодера покажет, как установить и настроить OpenClaw – локального AI-агента для работы и автоматизации задач.
В эфире покажут:
– как установить и настроить OpenClaw;
– как автоматизировать рутину и сократить количество ручных действий;
– как собрать мощнейшую рабочую связку Claude + OpenClaw + Cursor;
– как встроить AI-агента в текущую работу и ускорить процессы;
– как ускорить текущие процессы без найма дополнительных людей.
Это не вебинар «с нуля в IT» – это практикум для тех, кто уже использует ИИ и хочет выйти на следующий уровень.
🎁 Бонус: гайд по установке и настройке OpenClaw на вашем ПК.
Бесплатный практикум – по ссылке.
Давайте познакомимся с дружелюбным дядей по языку на всю жизнь
Это относится к PEP-401, выпущенному 1 апреля 2009 года (теперь вы знаете, что это значит).
Цитирую из PEP-401
Учитывая, что оператор неравенства != в Python 3.0 был ужасной ошибкой, вызывающей боль в пальцах, FLUFL восстанавливает оператор <> diamond в качестве единственного написания.
#theory // Just Python & Max
Это относится к PEP-401, выпущенному 1 апреля 2009 года (теперь вы знаете, что это значит).
Цитирую из PEP-401
Учитывая, что оператор неравенства != в Python 3.0 был ужасной ошибкой, вызывающей боль в пальцах, FLUFL восстанавливает оператор <> diamond в качестве единственного написания.
#theory // Just Python & Max
Сколько времени может работать код в Python
Вы не задумывались, сколько именно времени занимает работа кода в рамках одной ячейки?
Магическая команда time позволяет получить всю необходимую информацию о времени.
#theory // Just Python & Max
Вы не задумывались, сколько именно времени занимает работа кода в рамках одной ячейки?
Магическая команда time позволяет получить всю необходимую информацию о времени.
#theory // Just Python & Max
uuid в Python
Стандартный модуль uuid — быстрый и простой способ сгенерировать UUID (universally unique identifier, глобально уникальный идентификатор).
Так мы создаём случайное 128-битное число, которое почти наверняка будет уникальным.
Существует более 2¹²² возможных UUID. Это более 5 ундециллионов или 5,000,000,000,000,000,000,000,000,000,000,000,000.
Вероятность нахождения дубликатов в заданном наборе крайне мала. Даже при наличии триллиона UUID вероятность того, что среди них есть дубликат, гораздо меньше, чем один к миллиарду.
Вполне недурно для двух строк кода.
#theory // Just Python & Max
Стандартный модуль uuid — быстрый и простой способ сгенерировать UUID (universally unique identifier, глобально уникальный идентификатор).
Так мы создаём случайное 128-битное число, которое почти наверняка будет уникальным.
Существует более 2¹²² возможных UUID. Это более 5 ундециллионов или 5,000,000,000,000,000,000,000,000,000,000,000,000.
Вероятность нахождения дубликатов в заданном наборе крайне мала. Даже при наличии триллиона UUID вероятность того, что среди них есть дубликат, гораздо меньше, чем один к миллиарду.
Вполне недурно для двух строк кода.
#theory // Just Python & Max