Python tricks | Хитрости Питона
5.76K subscribers
2.21K photos
26 videos
1 file
2.52K links
Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты.

Сотрудничество: @SIeep_Token

Мы на платформе: https://telegram.me/python_tricks

Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
Download Telegram
Словарное включение (ч.1)

Многим из нас знакомо списковое включение (List Comprehension), которое позволяет за одну строку кода сгенерировать список.

🔗 Python tricks
MySQL: ORDER BY DESC

Ключевое слово ORDER BY по умолчанию сортирует результат по возрастанию. Чтобы отсортировать результат в порядке убывания, используйте ключевое слово DESC.

🔗 Python tricks
set.remove

Метод remove() удаляет указанный элемент из множества и обновляет множество. Он не возвращает никакого значения. Если элемент, переданный в remove(), не существует, генерируется исключение KeyError.

🔗 Python tricks
⚡️Хакатон ГАГАРИН.ХАК!

Крупный онлайн-марафон, который соберет участников со всей России. Событие пройдет в преддверии дня космонавтики и представит уникальную возможность для разработчиков продемонстрировать свои навыки и презентовать уникальные решения.

🚀Тебя ждет уникальный кейс:
- Алгоритм обнаружения аномалий в видеопотоке для реализации алгоритма сервисной аналитики.

📌Цель:
- Разработать алгоритм, который будет анализировать видеопоток на наличие аномалий или движений. Алгоритм не должен включать транскодирование видео и может быть реализован на любом языке программирования.

🏆Общий призовой фонд - 1 250 000 рублей!

🗓️Дата проведения: 12 - 14 Апреля
📍Формат: Онлайн

Подробная информация и регистрация: https://tglink.io/e5f8ef5f2926
Словарное включение (ч.2)

Оказывается, Python поддерживает аналогичный функционал для словарей! Код генерирует словарь, где у каждого имени определяется длина в символах.

🔗 Python tricks
Выборка простых чисел в списке любого размера

Выбирать простые числа приходилось мне на практике разве что во время учёбы, так что найти этому коду реальное применение непросто. Однако его легко переиначить для поиска любых других типов чисел – чётных / нечётных / делимых на определенное число.

🔗 Python tricks
Частичное совпадение пользовательского ввода

Эта замечательная фича позволяет справляться с ситуациями, когда пользователь вводит не все, что от него ожидается. Фишка работает в версиях Python не ниже 3.10.

🔗 Python tricks
Форматирование многострочного вывода

Если вы хотите, чтобы вывод напоминал табличку с одинаковым отступом, то при использовании F-строк добавьте интерполируемой переменной двоеточие и число, одинаковое для всех print(), например, 10. Это «резервирует» пространство из 10 символов

🔗 Python tricks
Файлы (ч.1)

Если речь идет о временном файле, который вы изучите сразу после исполнения и удалите, достаточно назвать его как объект.

Гуглите и используйте аббревиатуры. К примеру, датафрейм о пациентах, прошедший Предварительную обработку данных (Exploratory Data Analysis) и выгруженный в файл, можно назвать ‘patients_eda.csv’.

🔗 Python tricks
MySQL: RIGHT JOIN

RIGHT JOIN используется для объединения строк из двух таблиц на основе условия, где все строки из правой таблицы и соответствующие строки из левой таблицы возвращаются. Если нет соответствующих строк в левой таблице, то NULL значения заполняются в столбцах левой таблицы. В этом примере, все строки из таблицы Customers будут возвращены, а соответствующие строки из таблицы Orders будут включены. Если нет соответствующих заказов для клиентов, то будут возвращены NULL значения.

🔗 Python tricks
Файлы (ч.2)

Пишите в README пояснения к скриптам. Документация репозитория выручит, если придумать хорошее название не удастся.

🔗 Python tricks
Столбцы таблиц и столбцов (ч.1)

По умолчанию именуйте столбцы по-английски. Большая часть библиотек сегодня поддерживает обращение через квадратные скобки (для случаев, когда в названии не латиница). Но если название станет аргументом, передаваемым через командную строку, то придётся запоминать, как именно передавать кириллицу.

🔗 Python tricks
Столбцы таблиц и столбцов (ч.2)

Если решили именовать столбец по-русски, старайтесь использовать небольшое название (до 20 символов): такое при многократном обращении к столбцу не потребуется долго набирать.

🔗 Python tricks
Функции

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

🔗 Python tricks
tuple.index

Метод index() в Python используется для того, чтобы найти индекс первого вхождения определенного элемента в кортеже (tuple). Если элемент не найден в кортеже, будет вызвано исключение ValueError.

🔗 Python tricks
Логические блоки

• Используйте один уровень отступа для каждого нового блока кода (циклы, условия, функции и так далее).
• Избегайте хардкод-чисел. Заменяйте числа в коде на именованные константы.

🔗 Python tricks
Частичное совпадение пользовательского ввода

Эта замечательная фича позволяет справляться с ситуациями, когда пользователь вводит не все, что от него ожидается. Фишка работает в версиях Python не ниже 3.10.

🔗 Python tricks
MySQL: OFFSET

Ключевое слово OFFSET используется в комбинации с LIMIT для выполнения постраничного вывода результатов запроса к базе данных. Например, если у тебя есть таблица с большим количеством записей, и ты хочешь вывести результаты постранично, используй LIMIT для указания количества записей на странице и OFFSET"для указания смещения (то есть, сколько записей пропустить перед выводом следующей страницы).

🔗 Python tricks
Переменные (ч.1)

Но переменных много, правил именования — тоже. И базовая программа не охватывает всё.

Используйте аббревиатуры. Так выглядит переменная, содержащая идентификатор пользователя Telegram.

🔗 Python tricks
Переменные (ч.2)

Оставляйте неизменными названия переменных, которые устоялись в документации. Порой проще дописать комментарий об объекте и найти подсказку в Stack Overflow, чем получить понятное название, содержимое которого спустя месяц не отладить.

🔗 Python tricks