Python Skills 🐍
303 subscribers
1.02K photos
17 videos
302 links
Канал полезного и юмористического контента на тему программирования, в частности такого языка как Python.

По всем вопросам: @andrey_andrey01
Download Telegram
Разница между == и is

Многие разработчики не понимают разницу этих двух операторов сравнения. Из-за неправильного использования == и is в приложениях могут возникнуть странные ошибки.

Оператор == проверяет равенство значений двух объектов. А оператор is проверяет идентичность самих объектов. Его используют, чтобы удостовериться, что переменные указывают на один и тот же объект в памяти.

Но Python в целях производительности кеширует малые числа и короткие строки, поэтому возможны некоторые казусы, как в примере выше.

#тонкости
Что выводит данный код?
data_dict = {1: "X", 2: "Z", 3: "Y"}
print(data_dict.get(2, 4))
Anonymous Poll
13%
{1: "X", 2: 4, 3: "Y"}
13%
{1: "X", 2: "Z", 3: "Y" 4: 2}
0%
{2: 4}
50%
Z
13%
Error
13%
Посмотреть ответ
В этом мире есть всего 7 типов людей.
А к какому относишься ты?
Anonymous Poll
20%
i++
0%
++i
20%
i = i+1
40%
i += 1
20%
i = -(-i-1) 🤪
0%
i = -~i 🤪🤪
0%
i = (i ? i + (i / i) : 1) 🤪🤪🤪
Топ. Как реализовать очередь на Python

Разбираем задачу с собеседования. Нужно создать методы для поддержки работы приюта для животных.

Читать статью

#списки #функции
Напишите функцию для деления числа. Она должна принимать любое целое число (в т.ч. отрицательное) и возвращать список из двух половинок этого числа. Если входящее число нечетное, в списке должно быть большим второе число.

Примеры
number_split(4) ➞ [2, 2]
number_split(10) ➞ [5, 5]
number_split(11) ➞ [5, 6]
number_split(-9) ➞ [-5, -4]
Во время переезда в квартире появилось 5 пустых коробок, и кот стал в них спать. На каждой коробке написана своя цифра, от 1 до 5, а сами коробки стоят в ряд по порядку.
Наутро, когда никто не видит, кот вылезает из очередной коробки, а на ночь переходит спать в соседнюю справа или слева, которая стоит рядом с той, где он ночевал в прошлый раз. Каждое утро, пока кот еще спит, можно открыть только одну коробку, чтобы проверить, есть ли там кот.

Есть ли такая стратегия, чтобы гарантированно найти кота в коробке в какое-нибудь утро, если мы не знаем, в какую коробку он пошёл спать в первую ночь?
Не ищите логику в условии, давайте просто решать.

Смотреть ответ
От самых старых до самых новых.
Простой, но мощный веб-фреймворк

Самым популярным фреймворком для разработки серверной части на Python является Flask. К слову, он обгоняет даже Django по звездам на GitHub.

Flask предназначен для быстрого и легкого старта работы с возможностью масштабирования до сложных приложений. А коммьюнити предоставляет множество расширений для фреймворка.

Для создания минимального рабочего приложения достаточно кода выше. После запуска такого скрипта можете перейти в браузере по адресу http://localhost:5000/ и посмотреть результат.

#модули
Илон Маск построил в Австралии солнечную батарею, которая питает 750.000 домов. Пришёл счёт за электроэнергию и получилось, что они платят 0.0029$ за 1 кВт.час или 0.22₽ 😧
Классика
Что выведет данный код?
Anonymous Poll
10%
45
0%
42
40%
102
30%
Error
20%
Узнать ответ
Что выведет данный код?
Anonymous Poll
0%
1
54%
2
23%
3
15%
4
8%
Error
0%
Узнать ответ
Избегайте циклы с коллекциями

Представим задачу: требуется создать новый список, элементами которого будут являться квадраты чисел другого списка. Большинство сразу же напишут цикл for.

Но такой подход займет как минимум три строчки: объявление новой переменной, создание цикла и кода внутри него. Более того, также снижается скорость работы скрипта.

В коде выше мы привели две достойные альтернативы – генератор списка и функция map. В обоих вариантах не только код становится лаконичнее, но и заметно повышается производительность.

#совет
Функции. Используем zip() для парной итерации

В этом руководстве вы познакомитесь с логикой работы функции zip() и узнаете, как ее использовать для решения реальных проблем.

Читать статью

#функции