uk
Feedback

Не попадись на ботовода! Telemetrio знаходить і позначає такі канали мітками 👉 Хочеш бачити мітку, оформляй підписку

Just Python

Just Python

Закритий канал

🐍Простое изучение Python. Ссылка: @Portal_v_IT Сотрудничество: @oleginc

Показати більше
9 696
Підписники
-624 години
-217 днів
-7630 днів
Архів дописів
Что такое __pycache__ Вас не бесит эта папка? Возможно, вы её и не встречали, но знайте, что она хранит байткод приложения. Т
Что такое __pycache__ Вас не бесит эта папка? Возможно, вы её и не встречали, но знайте, что она хранит байткод приложения. Таким образом быстрее проходит импорт и запуск. В ней можно найти .pyc и .pyo файлы. Это байткод и оптимизированный байткод. Они создаются заново, если код программы изменился. Если очень интересно, зачем нужно переводить код в байткод, то можете почитать PEP 3147. #theory // Just Python

Три помощника в работе с циклами enumerate(iter, start=0) — проходится по итератору и возвращает (индекс, значение). Если зад
Три помощника в работе с циклами enumerate(iter, start=0) — проходится по итератору и возвращает (индекс, значение). Если задать start, то индекс сместиться на start единиц. zip(a, b, c...) — параллельно проходит по всем последовательностям, возвращая по элементу с каждого. reversed(obj) — переворачивает obj. Если это невозможно, выдаёт ошибку. #theory // Just Python

10 лет я слежу за мистическим журналом The Economist Я не ставил вакцину от COVID, потому что знал, что это опасно Я знал, пр
10 лет я слежу за мистическим журналом The Economist Я не ставил вакцину от COVID, потому что знал, что это опасно Я знал, про теракт в Крокусе за 2 недели до случившегося А неделю назад я увидел предупреждение о покушении на Трампа в их новой обложке Благо теперь журнал можно читать на русском, делюсь с вами: @TheEconomist

Только ключевые и только позиционные аргументы Начнём с терминов. Позиционные аргументы — те, что передаются по позиции (спас
Только ключевые и только позиционные аргументы Начнём с терминов. Позиционные аргументы — те, что передаются по позиции (спасибо, капитан очевидность). Ключевые — те, что передаются за счёт key=value. Все аргументы до косой черты (/) считаются позиционными, то есть передать в них данные можно только в определённом порядке. Все аргументы после звёздочки (*) считаются ключевыми, то есть передать данные можно только с помощью key=value. #theory // Just Python

__init__ и __new__ __new__(cls) создаёт экземпляр класса. Это статический метод, который вызывается когда мы пишем MyClass().
__init__ и __new__ __new__(cls) создаёт экземпляр класса. Это статический метод, который вызывается когда мы пишем MyClass(). В то время как __init__(self) инициализирует класс. То есть задаёт значения переменным, что-то считает. __init__ всегда вызывается после __new__, если функция вернула экземпляр cls, то есть класса. #theory // Just Python

Импортируем пакеты Что может быть проще? Но у Python есть несколько фишек, которые упростят работу с пакетами. 1. import — пр
Импортируем пакеты Что может быть проще? Но у Python есть несколько фишек, которые упростят работу с пакетами. 1. import <package> — просто импорт. 2. from <package> import <obj> — «вытаскивает» obj (функция, класс, переменная) из пакета. Можно импортировать всё, если написать на место <obj> звёздочку. 3. import <package> as <name> — импортирует модуль и задаёт имя, записанное после as. Работает и с from <package> import <obj> as <name>. Последнее удобно использовать для совместимости или если у вас несколько модулей, которые работают одинаково. #theory // Just Python

global vs nonlocal global — перечисленные идентификаторы стоит воспринимать как глобальные. А глобальные это те, которые дост
global vs nonlocal global — перечисленные идентификаторы стоит воспринимать как глобальные. А глобальные это те, которые доступны из любого места в модуле. nonlocal — оператор, уведомляющий среду, что стоит работать не с локальной переменной, а уровнем выше. Часто используется с вложенными функциями. #theory // Just Python

Что такое __all__ ? Вот вы написали from module import * и к вам в код попало кучу классов, которые используются только внутр
Что такое __all__ ? Вот вы написали from module import * и к вам в код попало кучу классов, которые используются только внутри модуля, снаружи они бесполезны. Избавиться от мусора можно, если записать в __all__ список имён всех объектов (классов, функций, переменных), которые надо импортировать. Документация. Кстати, объекты, которые начинаются на нижнее подчёркивание тоже не импортируются. #theory // Just Python

The Economist предупреждал Трампа о возможном покушении Более того, журнал расписал решающие события на ближайший год, которы
The Economist предупреждал Трампа о возможном покушении Более того, журнал расписал решающие события на ближайший год, которые полностью изменят облик и России, и всего мира. Пророчества журнала славятся своей точностью: новость о смерти президента Ирана вышла на 7 часов раньше, чем это случилось, а о ковиде журнал писал ещё за пол года до начала. Читайте The Economist на русском: @TheEconomist

О том как работает словарь. Начнём с того, что нам нужны хешируемые объекты, это те, у которых реализована функция __hash__.
О том как работает словарь. Начнём с того, что нам нужны хешируемые объекты, это те, у которых реализована функция __hash__. Чаще всего это неизменяемые типы (tuple, str) или пользовательские классы. После нам нужна хеш-таблица. Примерная её реализация есть на фото выше. Разобраться, как она работает, можно самостоятельно, но лучше прочитать классную статью, из которой я и украл код :) #theory // Just Python

Шутки в Python Удивительно, но в документации python есть раздел — humor. Это набор шуток, связанных с нашим любимым языком.
Шутки в Python Удивительно, но в документации python есть раздел — humor. Это набор шуток, связанных с нашим любимым языком. Вот одна из них: Маленькая девочка пришла на шоу домашних животных и просит ваббита (wabbit). Продавец смотрит на нее, улыбается и говорит: - Хочешь милого пушистого белого кролика или миленького коричневого кролика? - На самом деле, - говорит маленькая девочка, - я не думаю, что мой питон что-то заметит. #theory // Just Python

Класс с данными (для хранения информации) У всех классов есть данные, но есть те, которые используются специально для хранени
Класс с данными (для хранения информации) У всех классов есть данные, но есть те, которые используются специально для хранения информации о пользователе, позиции и т.д. Создавать их проще всего с @dataclass из dataclasses. Декоратор самостоятельно создаёт __init__, __eq__, __str__ и множество других важных методов на основе статических переменных. Документация. #theory // Just Python

Всего за 5 минут определите подходящую вам IT-профессию. Онлайн-школа Skillfactory разработала уникальный профориентационный тест из 18 вопросов. Ответив на них, узнаете наиболее подходящую вам специальность. Работайте в российских или зарубежных компаниях, в офисе или удаленно. Для айтишников — сниженная ставка по ипотеке, высокая зарплата, комфортные условия и гибкий график. Переходите по специальной ссылке, чтобы пройти тест, получить карьерную консультацию и мини-курс для выбора профессии в IT или дизайне Реклама. Информация о рекламодателе по ссылкам в посте.

yield оператор Он позволяет создавать функции-генераторы. Они могут просчитать и вернуть несколько значений но не за раз. Зап
yield оператор Он позволяет создавать функции-генераторы. Они могут просчитать и вернуть несколько значений но не за раз. Записывается он вместо return, принимая число, которое должна вернуть функция. Но если вы вызовете функцию то получите генератор, а не результат работы. По генератору можно пройтись так же, как и по списку, используя for. Или с помощью функции next(). Почему нельзя вернуть значения в виде списка? Список будет занимать очень много места, если в нём будет более 1000000 элементов, а генератор — нет. #theory // Just Python

Элементы, которые отсутствуют в словаре Если в словаре нет определённого ключа, то он вызывает __missing__. Суть в том, что м
Элементы, которые отсутствуют в словаре Если в словаре нет определённого ключа, то он вызывает __missing__. Суть в том, что мы можем переопределить этот метод. Кстати, примерно таким же образом, как и на фото выше, реализован defaultdict из модуля collections. #theory // Just Python

Методы генераторов Всего их три: close, throw, send. Первые два нам не интересны, поскольку они просто прерывают работу генер
Методы генераторов Всего их три: close, throw, send. Первые два нам не интересны, поскольку они просто прерывают работу генератора и/или выводят ошибку (если это throw). send() же позволяет передавать значения генератору. В первый раз всегда должно передаваться None, что бы запустить функцию. К слову, с помощью send() создают корутины — функции, которым можно передавать значения, останавливать и возобновлять работу программы. #theory // Just Python

Переменная «_» Если вы увидели такое название то знайте, что эта переменная просто необходима (без неё ничего не заработает),
Переменная «_» Если вы увидели такое название то знайте, что эта переменная просто необходима (без неё ничего не заработает), но нигде не используется. Часто встречается в циклах и при распаковке. Кстати, два, три, четыре нижних подчёркивания несут ту же функцию, просто _ уже занято. К тому же её использует интерпретатор Python, чтобы сохранять туда результат работы последней команды. #theory // Just Python

Другого шанса не будет, НОТКОЙН вернулся, судный день настал! Заходим 👉 https://t.me/notcoin_bot?start=er_19915104 Вы сразу получаете в подарок семи дневный платинум аккаунт, благодаря которому сможете пассивно зарабатывать - это просто ГЕМ 2024 года!

Подробнее разбираем type hints Да, аннотацию типов ещё называют type hints. В модуле typing можно найти кучу полезных полезны
Подробнее разбираем type hints Да, аннотацию типов ещё называют type hints. В модуле typing можно найти кучу полезных полезных объектов для работы с подсказками. Самые часто используемые: коллекции (List, Dict, Tuple), Any, Union, Optional. Когда мы их используем, мы в квадратных скобках передаём тип, с которым работает объект. #theory // Just Python

Делаем типы статичными Намучались с динамической типизацией? Что ж, у этого есть решение — аннотация типов. Она никак не влия
Делаем типы статичными Намучались с динамической типизацией? Что ж, у этого есть решение — аннотация типов. Она никак не влияет на программу, а только говорит программисту и IDE какой тип должен быть на месте этой переменной. При грамотном использовании вы сможете избежать множество проблем, ведь IDE вам подскажет, что здесь должен быть MySuperObject, а не None. #theory // Just Python