en
Feedback
Python tricks | Хитрости Питона

Python tricks | Хитрости Питона

Open in Telegram

Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты. Сотрудничество: @SIeep_Token Мы на платформе: https://telegram.me/python_tricks Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy

Show more
6 053
Subscribers
No data24 hours
-117 days
-5930 days
Posts Archive
ImportError Те из нас, кто привык работать в ноутбуках на базе Google Colaboratory / Jupyter Notebook, помнят, что в среду пр
ImportError Те из нас, кто привык работать в ноутбуках на базе Google Colaboratory / Jupyter Notebook, помнят, что в среду предустановлено множество популярных сторонних инструментов, и дополнительно их устанавливать командой pip не нужно. При работе с классической Python-программой легко забыть, что тот или иной инструмент не подключен. Или, что еще хуже, для данной версии Python не предусмотрена конкретная версия библиотеки. Недавно при запуске скрипта с langchain на Python 3.9. я была вынуждена обновлять языковой пакет до 3.11.5, ибо нужная langchain==0.0.194 в 3.9 попросту недоступна. Для таких ситуаций try — except малополезен. С подключаемыми инструментами все равно придется разбираться вручную. 🔗 Python tricks

string.upper Метод upper() преобразует все символы нижнего регистра в строке в символы верхнего регистра. Если символы нижнег
string.upper Метод upper() преобразует все символы нижнего регистра в строке в символы верхнего регистра. Если символы нижнего регистра отсутствуют, возвращается исходная строка. Если ты хочешь преобразовать строку в нижний регистр, используй lower(). Также ты можешь использовать swapcase() для переключения между строчными и прописными буквами. 🔗 Python tricks

Не стоит использовать try — except AttributeError Представим, что мы храним текстовые документы в специализированной базе: те
Не стоит использовать try — except AttributeError Представим, что мы храним текстовые документы в специализированной базе: текст (text) и координаты его вектора в многомерном пространстве (values). Библиотека langchain, когда запрашивает близкие по смыслу предложения, ищет близконаправленные вектора и возвращает список документов res в преобразованном виде. Если по квадратным скобкам узнать список в этом выводе можно, то определить, что каждый элемент — кортеж, уже сложнее. Блок try в таких ситуациях малоприменим, ибо тип данных задан автором библиотеки. Не ясно, какую ошибку класть в except. 🔗 Python tricks

Бонусный прием В PEP 654 были объявлены группы исключений (Exception Groups): они позволяют заложить в одну строку except сра
Бонусный прием В PEP 654 были объявлены группы исключений (Exception Groups): они позволяют заложить в одну строку except сразу несколько типов ошибок. Если исследовать типы ошибок нет времени, можно на скорую руку заложить в такую группу все популярные ошибки и обернуть блоком try — except всю программу. 🔗 Python tricks

TypeError + ValueError Если вы, скажем, планируете оперировать тем, что ввел пользователь, то input() может сыграть с вами зл
TypeError + ValueError Если вы, скажем, планируете оперировать тем, что ввел пользователь, то input() может сыграть с вами злую шутку. По умолчанию метод возвращает строку, а мы-то предполагаем целочисленное значение. try, в принципе, может справиться с такой ситуацией, если вы понимаете типы данных для проводимых операций (в данном случае, сложения). 🔗 Python tricks

⁉️ Готов стать профи в разработке на Python?- или будешь довольствоваться средним уровнем? Всего за 5 месяцев можно освоить ш
⁉️ Готов стать профи в разработке на Python?- или будешь довольствоваться средним уровнем? Всего за 5 месяцев можно освоить широкий стек технологий на онлайн-курсе «Python Developer. Professional» и вырасти в доходе и должности.  ➡️  Пройди тест по Python и проверь свои знания. Ответишь — пройдешь на продвинутый курс "Python Developer. Professional" от OTUS по специальной цене  🔥 Выбери светлую сторону силы и приходи на курс.

IndexError Допустим, мы и дальше получаем список реплик бота, причем каждый день длина этого перечня разная. Если все же прих
IndexError Допустим, мы и дальше получаем список реплик бота, причем каждый день длина этого перечня разная. Если все же приходится при создании цикла опираться на некую константу, которая с количеством реплик не всегда совпадает, try — except поможет справиться с ошибкой индекса. Указываем во второй части конструкции, с какой ошибкой может столкнуться скрипт. 🔗 Python tricks

Можно и нужно использовать try — except KeyError Если при чтении файла метод json.loads() возвращает вместо словаря список, т
Можно и нужно использовать try — except KeyError Если при чтении файла метод json.loads() возвращает вместо словаря список, то при попытке обратиться к ключу message можно схватить такое исключение. Эту ошибку легко допустить, когда не знаешь тип возвращаемого объекта. Представьте, что мы выгружаем логи бота по дням, а в выходные не случилось ни одной беседы. Тогда программа вернет объект None («ничего») про воскресенье, и у него тоже нет ключа ‘message’. Здесь try — except играет важную роль: навесив такой блок, мы обработаем ситуацию с пустотами. 🔗 Python tricks

Конвертер валюты С помощью этого небольшого кода ты можешь реализовать конвертер валюты. Пользователь сам вводит сумму и валю
Конвертер валюты С помощью этого небольшого кода ты можешь реализовать конвертер валюты. Пользователь сам вводит сумму и валюту. Предварительно нужно установить библиотеку forex-python.
from forex_python.converter import CurrencyRates

c = CurrencyRates()

amount = float(input("Введите сумму: "))
from_currency = input("Введите исходную валюту: ").upper()
to_currency = input("Введите желаемую валюту для конвертации: ").upper()

result = c.convert(from_currency, to_currency, amount)
print(f"{amount} {from_currency} равно {result} {to_currency}")
🔗 Python tricks

Целых 4 отсылки на Монти Пайтон Гвидо ван Россум любит это шоу, и даже в документации указал, что: «Язык назван в честь шоу Б
Целых 4 отсылки на Монти Пайтон Гвидо ван Россум любит это шоу, и даже в документации указал, что: «Язык назван в честь шоу Би-би-си “Летающий цирк Монти Пайтона” и не имеет никакого отношения к рептилиям. Ссылки на скетчи Монти Пайтон в документации не только разрешены, но и поощряются!». Так что неудивительно, что в самом языке есть несколько отсылок к шоу. 🔗 Python tricks

Никаких фигурных скобок В Python, в отличие от, например, C, C ++ или Java используются отступы вместо фигурных скобок. И даж
Никаких фигурных скобок В Python, в отличие от, например, C, C ++ или Java используются отступы вместо фигурных скобок. И даже если попытаться импортировать их, можно увидеть это. 🔗 Python tricks

string.swapcase Метод swapcase() возвращает строку, преобразуя все символы в противоположный регистр (прописные буквы в строч
string.swapcase Метод swapcase() возвращает строку, преобразуя все символы в противоположный регистр (прописные буквы в строчные и наоборот). Для преобразования строки в нижний регистр используй метод lower(). Аналогично, если для преобразования строки в верхний регистр используй upper(). 🔗 Python tricks

Get Method для словаря Большинство разработчиков используют скобки, чтобы получить значение из словаря. Но сейчас рекомендует
Get Method для словаря Большинство разработчиков используют скобки, чтобы получить значение из словаря. Но сейчас рекомендуется использовать Get method. При использовании метода скобок выдается ошибка, если ключ отсутствует. С помощью Get method вы получите “None” . 🔗 Python tricks

Превращение списка в одну строку Представьте, что у вас есть список строк, и вы хотите объединить все элементы в одну строку.
Превращение списка в одну строку Представьте, что у вас есть список строк, и вы хотите объединить все элементы в одну строку. Для этого вы наверняка будете перебирать каждый элемент в списке и присоединять к нему следующий. Но есть более быстрый и эффективный способ выполнения той же задачи с помощью одной строки кода. 🔗 Python tricks

Типы не для слабонервных Если проверить справку для types.CodeType, то можно узнать, что на эту тему думает создатель языка.
Типы не для слабонервных Если проверить справку для types.CodeType, то можно узнать, что на эту тему думает создатель языка. 🔗 Python tricks

Хэши Хеш — фиксированное целое число, идентифицирующее конкретную величину. Можно ли найти хеш бесконечности или NaN? В Pytho
Хэши Хеш — фиксированное целое число, идентифицирующее конкретную величину. Можно ли найти хеш бесконечности или NaN? В Python да. 🔗 Python tricks

Дядя Барри 1 первого апреля 2009 года Гвидо ван Россум заявил, что уходит в отставку, чтобы сосредоточиться на покорении Эвер
Дядя Барри 1 первого апреля 2009 года Гвидо ван Россум заявил, что уходит в отставку, чтобы сосредоточиться на покорении Эвереста, и теперь официально значится как Benevolent Dictator Emeritus Vacationing Indefinitely from the Language (BDEVIL) — или Великодушный почетный диктатор, отдыхающий от языка в течение неопределенного срока. На его место якобы пришел Барри Уорсоу (или Дядя Барри). И тут же ввел несколько изменений и обругал Python 3.0 и Си. Все это оказалось первоапрельской шуткой, отголоски которой все еще можно найти в интерпретаторе. 🔗 Python tricks

Хотите стать разработчиком, но не знаете, какой язык программирования выбрать? Вот несколько причин присмотреться к Python 👇
Хотите стать разработчиком, но не знаете, какой язык программирования выбрать? Вот несколько причин присмотреться к Python 👇🏻 ✔ Простой. Элементарный синтаксис легко понять и изучить. ✔ Запускается на разных платформах: MacOS, Linux, Windows, Android, iOS и других. Это удобно. ✔ Имеет ускоренный цикл разработки. Ему не нужно время на сборку и компиляцию. Пишете строку кода — и видите результат. ✔ Даёт гигантскую библиотеку готовых решений — от веб-разработки до искусственного интеллекта. По данным hh. ru, зарплата новичка — 100 000 рублей, а на июль 2023 открыто 5 365 вакансий. Освоить язык проще всего на онлайн-курсе Skillbox «Профессия Python-разработчик»: тут вам и удобный график, и личный куратор, и даже гарантия трудоустройства! Узнать подробнее о курсе можно здесь: https://epic.st/PyLiEB Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880

set.isdisjoint Метод isdisjoint() возвращает значение True, если два множества не имеют между собой общих элементов. В против
set.isdisjoint Метод isdisjoint() возвращает значение True, если два множества не имеют между собой общих элементов. В противном случае возвращается False. Ты также можешь передавать итерации, такие как список, кортеж, словарь или строку. В этом случае isdisjoint() сначала преобразует итерации в множества. Затем происходит проверка, не являются ли они непересекающимися. 🔗 Python tricks

Мысли о любви В дополнение к тому, каким должен быть код, Python любит порассуждать и о любви (и рассказать что любовь — это
Мысли о любви В дополнение к тому, каким должен быть код, Python любит порассуждать и о любви (и рассказать что любовь — это любовь, а что-то там еще). 🔗 Python tricks