Just Python
10.2K subscribers
4.39K photos
11 videos
4.38K links
🐍Простое изучение Python.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/justpython_it

РКН: clck.ru/3MnbSc
Download Telegram
Аргументы которые необязательны

Можно передавать необязательные аргументы через присвоение стандартного значения аргументу.

#theory // just python | ChatGPT
Деструктуризация массива

Деструктуризация (unpacking - распаковка) представляет разложение коллекции (кортежа, списка и т.д.) на отдельные значения. Так, как и многие языки программирования, Python поддерживает концепцию множественного присваивания.

#theory // just python | ChatGPT
Итерации next() в генераторах

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

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

#theory // just python | ChatGPT
Транспонирование двухмерного массива

Этот лайфхак покажет, как выполнить транспонирование 2d-массива с помощью метода zip.

#theory // just python | ChatGPT
Группировка смежных списков лямбда выражением

Группировку смежных списков, разумеется, легко осуществить в цикле for, особенно, используя zip(), но это далеко не самый лучший способ. Чтобы сделать это проще и быстрее, напишем лямбда-выражение с zip, которое сгруппирует смежные списки.

#theory // just python | ChatGPT
Модуль эмодзи

Модуль emoji позволяет добавлять в строки эмодзи.

#modules // just python | ChatGPT
Модуль geopy

Он работает путём абстрагирования API разных сервисов геокодирования. Этот модуль даёт возможность узнать полный адрес места, его долготу и широту и даже высоту. Также в нём есть полезный класс Distance. Он высчитывает расстояние между двумя местами в удобной единице измерения.

#modules // just python | ChatGPT
Инструмент командной строки howdoi

Задайте любой вопрос, и он постарается найти ответ на него. Но будьте осторожны: он извлекает код из топовых ответов на StackOverflow и не всегда даёт полезную информацию.

#tools // just python | ChatGPT
JSON-esque

В Python много скрытых вещей. Требуется только человек и его время, чтобы выяснить, что все магические операторы и прочее скрыты внутри. Одним из всех других вещей является знаменитый JSON-esque. Вы можете создавать вложенные словари, не создавая явно словари. Они волшебным образом появляются, когда мы ссылаемся на них.

#theory // just python | ChatGPT
Подсчёт числа элементов в списке

Помимо способности collections.Counter() понимать, что именно в строке нужно подсчитать.

В случае со списком слов модуль автоматически рассчитывает, как часто встречается то или иное слово.

#theory // just python | ChatGPT
Фильтрация с помощью модуля itertools

Модуль itertools позволяет в двух списках с именами и идентификаторами выбрать из leaders только те, где значения selector равны единице.

#module // just python | ChatGPT
Virtualenv

Другая важная функция python - Virtualenv. Virtualenv означает виртуальную среду. Это, теперь мои друзья, очень классная функция python. По сути, для тестирования python в разных условиях обычно требуется изменить глобальную среду python. Но одно из ключевых преимуществ песочницы вашей среды Python заключается в том, что вы можете легко протестировать один код в разных версиях Python и зависимостях пакетов. Чтобы установить virtualenv, вам нужно сначала установить pip.

#theory // just python | ChatGPT
Splat-оператор

Splat (одна звездочка) расширяет коллекцию до позиционных аргументов, а splatty-splat (две звездочки) — словарь до именованных аргументов.

#theory // just python | ChatGPT
Выборка простых чисел в списке любого размера

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

#theory // just python | ChatGPT
Дзен Питона

Последнее, но не менее важное, это дзен питона. Zen of python - это мини-руководство по программированию на Python. Даже если вы не программируете python, это все равно интересно читать. Просто зайдите в интерпретатор Python и введите:
import this

#theory // just python | ChatGPT
Столбцы таблиц и столбцов (ч.1)

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

#theory // just python | ChatGPT
Столбцы таблиц и столбцов (ч.2)

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

#theory // just python | ChatGPT
Функция enumerate()

Функция enumerate() добавляет счетчик в итерируемый объект, в котором используется метод iter , возвращающий итератор. Он может принимать последовательные значения индекса, начиная с нуля.

#theory // just python | ChatGPT
Словарное включение (ч.1)

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

#theory // just python | ChatGPT
Словарное включение (ч.2)

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

#theory // just python | ChatGPT
Функция slots

Если вы когда-нибудь писали программы, которые создают по-настоящему большие количества экземпляров некоего класса, то вы могли заметить, что таким программам неожиданно может понадобиться очень много памяти. Происходит это из-за того, что Python использует словари для представления атрибутов экземпляров классов.

#theory // just python | ChatGPT