Python tricks | Хитрости Питона
Ir al canal en Telegram
Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты. Сотрудничество: @SIeep_Token Мы на платформе: https://telegram.me/python_tricks Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
Mostrar más6 053
Suscriptores
Sin datos24 horas
-117 días
-5930 días
Archivo de publicaciones
Классика: Zen of Python от Тима Питерса
Zen of Python — 19 принципов программирования на Python, написанные разработчиком Тимом Питерсом. И единственная «пасхалка», которую официально указали в Руководстве.
🔗 Python tricks
Лучший способ борьбы с рутиной – взять ее в свои руки.
И тут на сцену выходят 1С-разработчики, которые упрощают бизнесу рутину
С помощью платформы «1С:Предприятие».
После доступного курса обучения программисты автоматизируют сбор отчётности, учёт налогов, зарплат и другие важные для бизнеса задачи.
И становятся незаменимыми в любой команде, в любом бизнесе.
Хочешь так же? Кликай, записывайся и дерзай!
string.lower
Метод lower() преобразует все символы верхнего регистра в строке в символы нижнего регистра. Если символы верхнего регистра отсутствуют, возвращается исходная строка. Для преобразования строки в верхний регистр используй upper().
🔗 Python tricks
Вам нравится читать контент на этом канале?
Возможно, вы задумывались о том, чтобы купить на нем интеграцию?
Следуйте 3 простым шагам, чтобы сделать это:
1) Регистрируйтесь по ссылке: https://telega.in/c/python_tricks
2) Пополняйтесь удобным способом
3) Размещайте публикацию
Если тематика вашего поста подойдет нашему каналу, мы с удовольствием опубликуем его.
Шифр Цезаря
Модуль this.py, который выводит Zen of Python, выглядит так.
Строка s зашифрована с помощью ROT13 — все буквы сдвинуты на 13 позиций. Кстати, так же иногда скрывают спойлеры, что многих бесит.
🔗 Python tricks
Рандомные координаты
Про комикс, который вызывается с помощью import antigravity слышали все (если вы его не видели, то ловите). Но если покопаться, можно найти пасхалку в пасхалке: в модуле antigravity.py можно найти функцию geohash, которая открывает другой комикс и генерирует случайные координаты.
🔗 Python tricks
string.strip
Метод strip() удаляет все начальные и конечные пробелы из заданной строки. С помощью параметра chars ты указываешь набор символов, которые необходимо удалить как из левой, так и из правой частей строки.
🔗 Python tricks
Напишите функцию на Python, которая принимает строку и возвращает словарь, содержащий количество вхождений каждого слова в строке. Считайте, что слова в строке разделяются пробелами, и игнорируйте знаки препинания.
Для начала используем метод
translate для удаления знаков препинания из исходной строки. Модуль string предоставляет строку punctuation, содержащую все знаки препинания. Метод translate использует таблицу перевода для удаления указанных символов.
Затем приводим текст к нижнему регистру, чтобы учесть все слова независимо от регистра. После этого используем метод split() для разделения текста на список слов.
Создаём пустой словарь word_count для подсчета вхождений каждого слова. Затем, используя цикл for, проходимся по списку слов и обновляем счетчик в словаре. Если слово уже есть в словаре, увеличиваем его счетчик на 1; если нет, добавляем его в словарь с начальным счетчиком 1.
Наконец, возвращаем словарь word_count, который содержит количество вхождений каждого слова в тексте.
🔗 Python tricksСливаю приватку на 3 входа!
👇. 👇
https://t.me/+W4pOe4bAEsc5MTRi
https://t.me/+W4pOe4bAEsc5MTRi
https://t.me/+W4pOe4bAEsc5MTRi
Сливаю приватку на 3 входа!
👇. 👇
https://t.me/+xwjkUd0cn8hjYTAy
https://t.me/+xwjkUd0cn8hjYTAy
https://t.me/+xwjkUd0cn8hjYTAy
Недостатки map()
К недостаткам
map(), так же как и в случае с filter(), можно отнести «ленивую оценку» (Lazy Evaluation). Создатели языка сделали немало в 3-й версии, чтобы улучшить производительность языка, и потому вместо обработанного объекта по умолчанию нам возвращается ссылка на итератор. Пока мы не обернем ее в list() или другой метод, обработка функцией-дочкой еще не произошла.
Это неплохо на малых оборотах, но на практике, где данные весьма разнообразны, без просмотра результата вероятность ошибок на проде увеличивается: мы просто не увидим потенциальных проблем.
🔗 Python tricksTwisted
Twisted — это асинхронный фреймворк для разработки сетевых приложений на языке Python. Он предоставляет реализацию множества протоколов, таких как TCP, UDP, SSL/TLS, DNS, и других, используя асинхронный стиль программирования.
Код выше создает TCP-сервер, прослушивающий порт 1234, и при подключении клиента создает экземпляр MyProtocol, который обрабатывает данные в методе dataReceived. В приведенном примере, сервер просто отправляет обратно полученные данные.
Twisted также предоставляет возможности для работы с асинхронными задачами, таймерами, и другими асинхронными концепциями. Это позволяет создавать эффективные и отзывчивые сетевые приложения.
Обратите внимание, что использование Twisted может потребовать времени для изучения, так как он предоставляет множество возможностей для работы с сетевыми протоколами и асинхронным программированием.
🔗 Python tricks
В жизни все взаимосвязано
Если ты потратил весь вечер на компьютерную игру – упустил возможность заработать, создавая ее.
Не жди, возьми жизнь в свои руки, и зарабатывай на любимом деле – стань разработчиком игр!
И да, это бесплатно, так что не жди, пока твое место на потоке обучения займет твой напарник по игре. Поторопись, бро!
Библиотека Qiskit
Qiskit — это открытая библиотека для работы с квантовыми вычислениями в Python. Она предоставляет инструменты для создания, симуляции и запуска квантовых программ на реальных квантовых устройствах.
Вы можете изучить документацию Qiskit для получения более подробной информации и примеров использования.
🔗 Python tricks
Функция math.gcd()
Функция math.gcd() используется для вычисления наибольшего общего делителя (НОД) двух целых чисел. НОД — это наибольшее число, которое является делителем обоих чисел.
Синтаксис:
math.gcd(a, b)
🔗 Python tricks
Загонка пользовательского ввода
Сотрудничество
map(), input() и list() позволит поместить весь пользовательский текст в список. Это может пригодиться при расчете эмоциональной окраски текста, ведь слова предстоит потом возвращать к исходной форме
🔗 Python tricksself() для обращения объекта к себе
В данном случае
self позволяет перемножить элементы списка на 2.
🔗 Python tricksКонкатенация списков с использованием append()
Когда мы используем
append() с другим списком, происходит не конкатенация (слияние) списков в привычном понимании, а добавление одного списка как элемента в другой список.
Результат этого кода — list1 = [1, 2, 3, [4, 5, 6]]. Теперь list2 стал элементом последнего элемента списка list1.
🔗 Python tricksmap() + лямбды
Мы можем комбинировать мэппинг с безымянными функциями, чтобы код стал еще короче.
Возведя все элементы списка ls в квадрат, мы получим такой результат.
🔗 Python tricks
Отличие append() от extend()
Метод
extend() также используется для добавления элементов в список, но в отличие от append(), он принимает итерируемый объект (например, другой список) и добавляет его элементы по отдельности.
Таким образом, метод extend() объединяет содержимое двух списков, тогда как метод append() просто добавляет новый элемент в конец списка.
Дело в том, что append() добавляет один элемент, в то время как extend() добавляет все элементы переданного списка поочередно.
🔗 Python tricks