9 696
订阅者
-624 小时
-217 天
-7630 天
帖子存档
9 696
Поговорим про del
Он не удаляет объект, как вы могли подумать, а убирает связь между переменной и объектом.
Потом, если объект нигде больше не используется, сборщик мусора удалит его.
Ещё с его помощью можно убирать данные из списка, словаря.
#theory // Just Python
9 696
Модуль heapq
Нас интересуют только две функции:
nlargest() и nsmallest(). Они позволяют получить n самых больших/маленьких значений в iterable.
В большинстве случаев функции быстрее чем sorted(iterable)[:n]. Их использование можно заметить в Counter.most_common().
#modules // Just Python9 696
Генераторные списки
Эта штука может уместить for в одну строку, так ещё и работает быстрее, чем обычный цикл. Используется, как вы уже поняли, для создании нового списка.
Кстати, генерировать можно не только списки, но и множества, словари. А можно просто передавать функциям, по типу
sum().
#theory // Just Python9 696
Объясняю магию
\b возвращает курсор вывода на один символ назад. А поскольку после него был ещё символ (a), то он просто перезаписался.
Постараюсь интерактивно показать, | это курсор. Первым делом вывелось a|, потом, за счёт \b, стало так: |a, и в результате получили c|.
Кстати, все такие символы можно тут найти.
#theory // Just Python9 696
Всего за 5 минут определите подходящую вам IT-профессию.
Онлайн-школа Skillfactory разработала уникальный профориентационный тест из 18 вопросов. Ответив на них, узнаете наиболее подходящую вам специальность.
Работайте в российских или зарубежных компаниях, в офисе или удаленно. Для айтишников — сниженная ставка по ипотеке, высокая зарплата, комфортные условия и гибкий график.
Переходите по специальной ссылке, чтобы пройти тест, получить карьерный гайд по профессии и скидку 45% на обучение.
Реклама. Информация о рекламодателе по ссылкам в посте.
9 696
Немного про регулярные выражения
Регулярные выражения невероятно удобные. Но их просто невозможно читать, а уже тем более менять. Но есть решение!
Недавно наткнулся на статью, где гений-разработчик с помощью f-строк в разы упрощает работу с регулярными выражениями.
#theory // Just Python
9 696
Рассказываю про dict
Это переменная, которая есть почти у всех классов. Она хранит в себе все атрибуты. Поскольку это словарь, мы можем её менять, создавая новые атрибуты.
Самое интересное то, что эта переменная есть даже у функций. Таким образом мы можем создавать атрибуты даже у функций.
#theory // Just Python
9 696
Теперь разберём генератор
Это всё те же итераторы, которые используются для генерации/создания чего либо, поэтому пройтись по ним можно только 1 раз. Есть функции-генераторы, есть генераторы списков (о них чуть позже).
Они часто используются при больших вычислениях, ведь не потребляют много памяти. А ещё у генераторов есть свои методы.
#theory // Just Python
9 696
❌ ХОМЯК и NotCoin не сделают тебя богатым, очнись пожалуйста !
🪙 +11.524$ на балансе видишь ? Это кстати с 150$ вложений. Это был челлендж лестница со 150$ до 11.000$ на арбитраже криптовалют, а сейчас начинаем второй этап!
В чём суть заработка?: «Необходимо покупать криптовалюту в месте «А» дешевле, а продавать в месте «Б» дороже. Купили → продали, купили → продали, а разницу забрали себе»
🔹Старт: 150$
🔹Цель: 50.000$
🔹Период: 1.5 месяца
Присоединяйся и начинай, рабочая связка на 4% в закрепе👇
https://t.me/+G4cMOI0kIqZhZTcy
9 696
Модуль dis
Лучший способ узнать Python — залезть к нему под капот. Это и делает dis. Вернее, он даёт нам доступ к байт-коду.
Таким образом можно понять, каким образом Python оптимизирует код. Особенно интересно проверять с строками.
#modules // Just Python
9 696
⚡️«Последние дни СВО: "мирняк" уже подписывают, а с РФ снимают все санкции». Увы, но не всё так просто — это сложная система, в которой неподготовленному человеку разобраться крайне трудно — слишком много переменных.
Хотите знать больше и видеть дальше — читайте легендарный журнал TIME. Именно они первыми заговорили об обострении радикального исламизма и чистках в Минобороны РФ.
Теперь они предупреждают о разделении Украины, угрозе гражданской войны в США и других ключевых событиях этой осени.
Подпишись, чтобы подготовиться к тому, что неизбежно: @TimeJournal
9 696
Лямбда-функция
Слово lambda позволяет запихнуть простую функцию в одну строку. Часто используется вместе с
map(), filter().
Но будьте осторожны, некоторые питонисты не любят функциональщину... Я в том числе.
#theory // Just Python9 696
Экранирование
Вы пытались запихнуть ' и " в строку? А сделать перенос на новую линию? Это сделать довольно сложно без экранирования (про multi-line строки пока не говорим).
Первый символ всегда будет , после идёт дополнительный, например: ' -> ', \ -> , n - перенос на новую строку, 0 - пустой символ (сишники поймут).
#theory // Just Python
9 696
Ищем жуков (bugs)
Функция подсчёта площади квадрата со стороной 5 должна возвращать 25. А если не вернёт? От таких простых ошибок защищает assert.
Если передаём оператору False, то получаем AssertionError с текстом из второго аргумента (если он есть, конечно).
Кстати, чтобы ускорить приложение, проверку можно отключить, запустив скрипт так:
python3 -O foo.py.
#theory // Just Python9 696
9 696
@staticmethod и @classmethod
@staticmethod обозначает метод статическим. @classmethod привязывает метод к классу. Теперь перейдём к примеру.
__new__ это статический метод и он используется для создания экземпляра класса. dict.fromkey() это ещё один способ создания словаря и это уже classmethod.
#theory // Just Python9 696
Дескрипторы
Сложная тема. Это атрибуты-классы, с методами
__get__(obj, objtype), __set__(obj, value) или __delete__(obj).
Они позволяет менять поведения получения значения атрибута, его установки и удаления. Есть хороший HowTo на эту тему.
#theory // Just Python9 696
Замыкание
Это возможность вложенной функции получить доступ к данным во внешней даже после того, как та выполнилась.
На его основе строится около половины алгоритмов в функциональном программировании. А ещё замыкание позволяет инкапсулировать код.
С этой штукой надо быть осторожным и без надобности не использовать, поскольку она довольно требовательная к ресурсам пк.
#theory // Just Python
9 696
Проснулся. Зашёл в телеграм. Получил 28.000 руб. Пошёл отдыхать.
Согласитесь, звучит как сказка. Но примерно так выглядят будни закупщика в телеграм.
Работка непыльная: нужно анализировать телеграм-каналы и отделять хорошие паблики от плохих. На старте платят около 100к, а через месяц можно выйти на 200-250 тысяч чистыми.
Опыт? Не нужен. Занятность? 2-3 часа в день. Риски? Нулевые, даже с работы уходить не надо.
Все, что нужно для старта – запустить этот бот. Там узнаете, как с помощью телеграма накопить на машину или квартиру, выйдя на доход в 200-300 тысяч. Дерзайте, всё тут: https://t.me/bentsa_traffic_bot
9 696
Что ещё за Ellipsis?
Ellipsis, в переводе с английского — многоточие. Теперь, думаю, нет вопросов, почему "..." и Ellipsis это одно и то же.
Используется переменная для расширения возможностей срезов, за счёт изменения метода
__getitem__.
Зачем? Она используется в numpy. Может быть индикатором того, что тут код надо ещё написать. Или использоваться в аннотации типов.
#theory // Just Python