ar
Feedback
Python академия

Python академия

الذهاب إلى القناة على Telegram

Учи Python быстро и легко. Ежедневно публикуем практические задачи, разборы, готовые решения, объяснения логики, советы по алгоритмам. ✔ Подходит для прокачки навыков кодирования. По всем вопросам @evgenycarter

إظهار المزيد
7 183
المشتركون
-224 ساعات
-107 أيام
-3830 أيام
أرشيف المشاركات
Курс «Разработчик 1С» от Яндекса. За 6 месяцев освоите один из самых простых языков программирования и пройдёте стажировку За
Курс «Разработчик 1С» от Яндекса. За 6 месяцев освоите один из самых простых языков программирования и пройдёте стажировку Зарегистрироваться #реклама 16+ practicum.yandex.ru О рекламодателе

Регулярные выражения Вы уже поняли, что при работе со строками модель re просто необходим. Отлаживать их очень тяжело, но все
Регулярные выражения Вы уже поняли, что при работе со строками модель re просто необходим. Отлаживать их очень тяжело, но все же необходимо. В python для этого есть встроенная возможность, вы можете указать как флаг re.DEBUG. По названию видно, что данный flag помогает дебажить регулярные выражения. Возможно кому-то данный способ может показаться неудобным. Я так же советую к использованию сайт regex101.com. В нем можно сразу создавать и проверять регулярные выражения, что очень удобно. Подписывайтесь на канал 👉@pythonofff

Оператор морж в Python 3.8 Оператор морж (:=) в Python 3.8 позволяет присваивать значения переменным внутри выражений. Это оз
Оператор морж в Python 3.8 Оператор морж (:=) в Python 3.8 позволяет присваивать значения переменным внутри выражений. Это означает, что вы можете присвоить значение переменной и использовать её в том же выражении. Например, вместо того, чтобы записывать значение в переменную, а затем использовать её, вы можете сделать это одновременно. Пример использования оператора морж:
x = 5
if (n := len(str(x))) > 3:
    print(f"Number {x} has more than 3 digits ({n})")
В этом примере переменной n присваивается значение длины строки x, и это значение сразу же используется в условии if. Таким образом, оператор морж позволяет делать код более компактным и читаемым. Оператор морж также удобен при работе с циклами. Например, вы можете использовать его в цикле while для проверки условия и одновременного присваивания значения переменной. Пример использования оператора морж в цикле:
while (n := random.randint(1, 10)) != 5:
    print(n)
В этом примере переменной n присваивается случайное значение от 1 до 10, и цикл продолжается до тех пор, пока значение переменной не станет равным 5. Таким образом, оператор морж позволяет уменьшить количество строк кода и улучшить его читаемость. Подписывайтесь на канал 👉@pythonofff

Регулярные выражения Метод sub позволяет заменить в строке по шаблону на нужный нам текст. repl, string, max=0) pattern - шаб
Регулярные выражения Метод sub позволяет заменить в строке по шаблону на нужный нам текст. repl, string, max=0) pattern - шаблон repl - на что заменяем string - строка по которой ищем max - сколько раз заменяем Соответственно, этот метод возвращает нужную нам строку. Подписывайтесь на канал 👉@pythonofff

Infostart Teamlead&CIO Event - Москва 24-25 февраля 2025 Ключевое событие года для ИТ-руководителей! Более 1000 участников и
Infostart Teamlead&CIO Event - Москва 24-25 февраля 2025 Ключевое событие года для ИТ-руководителей! Более 1000 участников и 80+ докладов от практиков-экспертов со всей России. 🎓 В центре внимания: - Лидерство и управление ИТ-командами; - Методология управления в ИТ, ITSM, Service Desk; - Управление ИТ-инфраструктурой; - Информационная безопасность, управление рисками; - Управление проектами и командой в ИТ; - Оптимизация DevOps-процессов; - ИИ в сфере ИТ. Обмен опытом и расширение профессиональных связей. Дата и место проведения: 📅 24-25 февраля 2025 года; Москва, Конгресс-центр ЦМТ, Краснопресненская наб., 12. ⚡ Узнайте, как вывести ИТ-проекты на новый уровень. Программа и регистрация на сайте! Узнать больше #реклама event.infostart.ru О рекламодателе

hex, oct, bin Приходилось вам раньше работать с различными системами счисления? Если да, то вы знаете, как написать программу
hex, oct, bin Приходилось вам раньше работать с различными системами счисления? Если да, то вы знаете, как написать программу переводящую из одной системы в другую. Пишется она довольно просто, но иногда стоит задача быстро написать код с какой-то популярной системой счисления. Обычно это двоичная, восьмеричная или шестнадцатеричная. Для всех этих систем есть встроенные функции, которые переводят в нужную нам систему! Из 10-ричной: hex - перевод в 16-ричную систему oct - перевод в 8-ричную систему bin - перевод в 2-ичную систему А из любой системы счисления можно получить число максимально простым способом: int(number, base) Подписывайтесь на канал 👉@pythonofff

Замена текста с re.sub() Метод re.sub() в модуле re является функцией, которая позволяет заменять фрагменты строки в соответс
Замена текста с re.sub() Метод re.sub() в модуле re является функцией, которая позволяет заменять фрагменты строки в соответствии с определенным шаблоном. Этот метод очень полезен при работе с регулярными выражениями в Python, так как он позволяет легко заменять или модифицировать текст в строке. Для использования метода re.sub(), необходимо передать ему три аргумента: шаблон (регулярное выражение), строку замены и строку, в которой нужно произвести замену. При этом, если шаблон не найден в строке, то замена не будет выполнена. Пример использования метода re.sub():

import re

text = "Hello, World!"
new_text = re.sub(r"Hello", "Hi", text)
print(new_text)  # Output: Hi, World!
В данном примере мы импортируем модуль re, создаем переменную text с исходным текстом «Hello, World!» и заменяем слово «Hello» на «Hi» с помощью метода re.sub(). Результатом будет строка «Hi, World!». Подписывайтесь на канал 👉@pythonofff

infinity Самая типичная проблема при написании некоторых сортировок — назначение самой большой переменной. Часто она решается
infinity Самая типичная проблема при написании некоторых сортировок — назначение самой большой переменной. Часто она решается простым вводом большого числа или возведением в степень. Это, конечно, не стареющая классика, но метод максимально не надежный, а главное есть более удачные способы float('infinity') или float('inf') для получения максимально возможного числа float('-infinity') или float('-inf') для получения минимально возможного числа. Не работает с int, требуется использовать именно float. Подписывайтесь на канал 👉@pythonofff

Получи грант на обучение в Центральном университете Центральный университет выдает гранты на 4 года обучения в бакалавриате.
Получи грант на обучение в Центральном университете Центральный университет выдает гранты на 4 года обучения в бакалавриате. Грант покрывает до 100% стоимости обучения. Участвуй в отборе, чтобы получить грант. Получи доступ к уникальным активностям для абитуриентов. Для выпускников 10-х, 11-х классов и колледжей. Подать заявку #реклама apply.centraluniversity.ru О рекламодателе

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

def my_function(my_list=None):
    if my_list is None:
        my_list = []
    my_list.append("element")
    print(my_list)

my_function()  # ["element"]
my_function()  # ["element"] (не изменяет значение по умолчанию)
В приведенном примере использовано None как значение по умолчанию для аргумента функции, и внутри функции создается новый пустой список, если аргумент не был передан. Это позволяет избежать проблем с изменяемыми объектами и гарантирует, что каждый вызов функции работает с отдельным списком, не влияя на другие вызовы. Подписывайтесь на канал 👉@pythonofff

Библиотека Progressbar Думали ли вы когда-нибудь над полоской прогресса? Иногда бывает полезно добавить в код отображение про
Библиотека Progressbar Думали ли вы когда-нибудь над полоской прогресса? Иногда бывает полезно добавить в код отображение прогресса, чтобы пользователь не беспокоился, что программа не отвечает. В первую очередь это касается синхронных приложений. Ведь, если наш код выполняет что-то одно, то на другие действия он не будет реагировать, ставя их в очередь. Ну и еще один вариант показывать, что программа не виснет, а думает, при этом не обязательно показывать прогресс. Все это очень интересно, но если мы начнем самостоятельно писать полосу прогресса, то отвлечемся от основного кода. К счастью, в python есть библиотека Progressbar, которая делает все за нас. Подписывайтесь на канал 👉@pythonofff

Библиотека schedule Гибкая библиотека для создания планировщика. Точнее с её помощью можно создавать задачи, которые будут вы
Библиотека schedule Гибкая библиотека для создания планировщика. Точнее с её помощью можно создавать задачи, которые будут выполняться с определенным интервалом. Промежуток настраивается как душе угодно и работает до выключения пользователем приложения. Конечно можно было использовать стандартный таймер, но зачем изобретать велосипед? С данной библиотекой планировка задач станет намного проще и понятнее другим программистам. Библиотеку необходимо установить: install schedule В примере используется seconds, но можно использовать minutes, hour, day.at("8:00"), monday, minute.at(":17"). Если добавлять at, то указываем во сколько именно произойдет событие. Подписывайтесь на канал 👉@pythonofff

Новый старт продаж АК ATLAS в Крыму, г. Судак. ✅ Открыты продажи нового комплекса Atlas Apart-Hotel & SPA на первой береговой
Новый старт продаж АК ATLAS в Крыму, г. Судак.Открыты продажи нового комплекса Atlas Apart-Hotel & SPA на первой береговой (в 30 метрах от моря) у подножия заповедной горы Алчак в Судакской бухте. Апартаменты в Крыму в собственность под управлением. Готовый арендный бизнес с доходностью 1,5 млн. в год. - Рассрочка 0% от застройщика индивидуально. - Доступна ипотека 8ми банков партнеров. - Оформление через эскроу-счет по ФЗ №214. - Площади от 42 - 102 м2. - SPA-центр с подогреваемым бассейном. - Панорамные виды из номеров на море и вулкан. ❤️ Лучшая цена только сейчас на старте продаж! - Для отдыха. - Для сохранения капитала и перепродажи. - Для получения дохода от сдачи в аренду. Перейти на сайт Финансовые услуги оказывает: ПАО Сбербанк, Банк ВТБ (ПАО). #реклама crimea-apart.ru О рекламодателе

Библиотека JmesPath Как вы уже заметили работать с json файлами в python очень удобно, ведь они отлично конвертируется в слов
Библиотека JmesPath Как вы уже заметили работать с json файлами в python очень удобно, ведь они отлично конвертируется в словарь. Также мы разобрали полезную библиотеку json, поэтому еще раз говорить о ней не будем. Но вот нам надо получить данные из файла. А формат json, как правило имеет множество вложений. Искать что-то нужное можно, но не всегда это удобно и красиво (а дзен Python говорит, что красота имеет значение) JmesPath облегчает работу в несколько раз. Вместо file['a']['b']['c'] можно написать jmespath.search('a.b.c', file). Кажется стало длиннее, но это потому что мы взяли мало элементов, и согласитесь a.b.c выглядит лучше. Даже отредактировать в случае чего будет проще. Подписывайтесь на канал 👉@pythonofff

Асинхронное программирование Обычно мы пишем синхронный код - выполняется по порядку один за другим. Но иногда требуется, что
Асинхронное программирование Обычно мы пишем синхронный код - выполняется по порядку один за другим. Но иногда требуется, чтобы выполнялось несколько задач одновременно. К примеру, пока копируются файлы можно было поиграть в игру. Это возможно благодаря нескольким ядрам и потокам. ВАЖНО! Асинхронность не обязательно делает код быстрее, но может повысить его эффективность. В момент простаивания процессор будет переключаться на другие задачи. На картинке программа, где повар готовит сразу несколько блюд. По другому бы нам пришлось по-очереди готовить каждое блюдо, но мы можем вернуться к другим, если поставили блюдо на огонь. Подписывайтесь на канал 👉@pythonofff

Концептуальные офисы в БЦ RUNOVSKY 14 Концептуальное офисное пространство для работы, расположенное в историческом центре Мос
Концептуальные офисы в БЦ RUNOVSKY 14 Концептуальное офисное пространство для работы, расположенное в историческом центре Москвы в районе Замоскворечье. Проект имеет свой неповторимый характер. Переосмысление стиля ар-деко нашло свое отражение в черных фасадах с арочным остеклением. БЦ находится в 2 минутах ходьбы от метро "Новокузнецкая", через которую проходят основные пешие маршруты до Третьяковской галереи, парка Зарядья и Московкского Кремля. Проектом предусмотрено большое количество планировочных решений офисов площадью от 27 м2 с возможностью объединения смежных помещений. Тех, кто решит купить лот в "RUNOVSKY 14", ждет премиальный сервис, безопасность и комфортная атмосфера. Перейти на сайт #реклама зиккурат.рф О рекламодателе

Как красиво напечатать json в Python? Вы можете использовать json.dumps() в Python, чтобы красиво напечатать json. Подписывай
Как красиво напечатать json в Python? Вы можете использовать json.dumps() в Python, чтобы красиво напечатать json. Подписывайтесь на канал 👉@pythonofff

Удаление дубликатов в списке Первое что приходит на ум — преобразовать список во множество и обратно. Это хороший и рабочий с
Удаление дубликатов в списке Первое что приходит на ум — преобразовать список во множество и обратно. Это хороший и рабочий способ. Но если вам нужно сохранить последовательность, то этот способ не подойдёт. С этой задачей легко справится OrderedDict из модуля collections Подписывайтесь на канал 👉@pythonofff

Дарим подписку на Яндекс Музыку Ответьте на 1 вопрос и Яндекс Музыка для вас и 3-х ваших близких 30 дней бесплатно. Кинопоиск
Дарим подписку на Яндекс Музыку Ответьте на 1 вопрос и Яндекс Музыка для вас и 3-х ваших близких 30 дней бесплатно. Кинопоиск и Яндекс Книги тоже в подписке. Попробуйте сейчас❤️ Попробовать #реклама 18+ music.yandex.ru О рекламодателе Реклама на Яндексе

Декораторы Очень важная тема, с помощью декорирования можно писать очень удобные логи или существенно расширять функции. Мног
Декораторы Очень важная тема, с помощью декорирования можно писать очень удобные логи или существенно расширять функции. Многие библиотеки работают с использованием декораторов: Flask и aiogram хорошие тому примеры. Мы показываем лишь простой пример, возможности куда шире. Позже покажем пример использования с упоминаемыми выше библиотеками. Подписывайтесь на канал 👉@pythonofff