Pyperclip
Модуль pyperclip имеет функции
Таким образом, можно прямо через код копировать вывод программы в буфер обмена вместо того, чтобы делать это вручную.
Установить этот модуль можно привычным способом через пакетный менеджер pip.
Модуль pyperclip имеет функции
copy()
и paste()
, которые позволяют отправлять текст в буфер обмена вашего компьютера и получать его оттуда. Таким образом, можно прямо через код копировать вывод программы в буфер обмена вместо того, чтобы делать это вручную.
Установить этот модуль можно привычным способом через пакетный менеджер pip.
Символы Юникода
Добавлять юникод-символы в строковые литералы можно не только с помощью их номеров, но и по их названиям.
Более того, такая запись символов юникода совместима и с f-строками, а это очень удобно.
Добавлять юникод-символы в строковые литералы можно не только с помощью их номеров, но и по их названиям.
Более того, такая запись символов юникода совместима и с f-строками, а это очень удобно.
Как можно более кратко представить эту запись?
Anonymous Quiz
8%
A = Y if Z else Y
75%
A = Y if X else Z
6%
A = X if Z else Y
12%
A = X if Y else Z
Комплексные числа в Python
Кроме уже известных вам типов int, float и подобных, в Python существует еще один довольно интересный тип, а именно, complex.
В Python комплексные числа представлены в виде
Это число можно превратить в строку с помощью str, посчитать его модуль с помощью abs, а также для доступа к его реальной или мнимой части можно воспользоваться функциями
Хотя данный тип и является встроенным, для полноценной работы с комплексными операциями понадобится модуль cmath.
Кроме уже известных вам типов int, float и подобных, в Python существует еще один довольно интересный тип, а именно, complex.
В Python комплексные числа представлены в виде
x + iy
. Python преобразует реальные числа x
и y
в комплексное с помощью функции complex(x,y)
. Это число можно превратить в строку с помощью str, посчитать его модуль с помощью abs, а также для доступа к его реальной или мнимой части можно воспользоваться функциями
real()
и imag()
. Хотя данный тип и является встроенным, для полноценной работы с комплексными операциями понадобится модуль cmath.
Дизассемблирование
Встроенный модуль
На картинке показана работа этого модуля на примере функции, но такое можно повторить и с классами – в таком случае все его функции будут дизассемблированы.
Встроенный модуль
dis
позволяет декомпилировать написанную вами программу в байт-код Python. На картинке показана работа этого модуля на примере функции, но такое можно повторить и с классами – в таком случае все его функции будут дизассемблированы.
Какая из строчек кода выведет структуру, отсортированную в порядке увеличения возрастов животных?
Anonymous Quiz
45%
sorted(animals, key='age')
15%
Ни один вариант не является верным, два словаря нельзя сравнивать друг с другом.
35%
sorted(animals, key=lambda animal: animal['age'])
5%
sorted(animals)
Метод popitem()
Метод словаря popitem() удаляет последнюю вставленную пару «ключ-значение» указанного ключа и возвращает эту пару.
Метод словаря popitem() удаляет последнюю вставленную пару «ключ-значение» указанного ключа и возвращает эту пару.
Какая из перечисленных инструкций выполнится быстрее всего, если n = 10**6?
Anonymous Quiz
18%
a = list(i for i in range(n))
29%
a = [i for i in range(n)]
38%
a = (i for i in range(n))
15%
a = {i for i in range(n)}
geopy
Программистам может быть сложно ориентироваться в географии. Однако модуль geopy всё упрощает:
Он работает путём абстрагирования API разных сервисов геокодирования. Этот модуль даёт возможность узнать полный адрес места, его долготу и широту и даже высоту.
Также в нём есть полезный класс Distance. Он высчитывает расстояние между двумя местами в удобной единице измерения.
Программистам может быть сложно ориентироваться в географии. Однако модуль geopy всё упрощает:
$ pip install geopy
Он работает путём абстрагирования API разных сервисов геокодирования. Этот модуль даёт возможность узнать полный адрес места, его долготу и широту и даже высоту.
Также в нём есть полезный класс Distance. Он высчитывает расстояние между двумя местами в удобной единице измерения.
Кэширование функций
Кэширование может сэкономить время, когда связанная с вводом или выводом функция периодически вызывается с одинаковыми аргументами. Раньше приходилось создавать свою реализацию, но в Python 3.2+ появился декоратор
Давайте реализуем калькулятор чисел Фибоначчи с использованием кэша. Советую попробовать запустить любую рекурсивную функцию с кэшированием и без него, прирост в скорости замечается сразу.
Кэширование может сэкономить время, когда связанная с вводом или выводом функция периодически вызывается с одинаковыми аргументами. Раньше приходилось создавать свою реализацию, но в Python 3.2+ появился декоратор
lru_cache
, который позволяет нам быстро кэшировать и вскрывать возвращаемые значения функции. Давайте реализуем калькулятор чисел Фибоначчи с использованием кэша. Советую попробовать запустить любую рекурсивную функцию с кэшированием и без него, прирост в скорости замечается сразу.
Библиотека sh
Любой программист должен знать bash - язык для взаимодействия с линуксом. Основы знают все, ведь по-другому не запустить программу на сервере или не установить нужную библиотеку. Данный модуль позволяет использовать bash прямо в Python коде.
Библиотеку требуется установить:
Если вдруг вы забыли как написать что-то на Python, то всегда можете использовать bash.
Любой программист должен знать bash - язык для взаимодействия с линуксом. Основы знают все, ведь по-другому не запустить программу на сервере или не установить нужную библиотеку. Данный модуль позволяет использовать bash прямо в Python коде.
Библиотеку требуется установить:
pip install sh
Если вдруг вы забыли как написать что-то на Python, то всегда можете использовать bash.
Not a Number
В модуле math есть особый объект, который называется NaN (Not a Number).
Такие объекты не уникальны, и даже не равны самим себе, так что вы можете иметь несколько подобных объектов, взятых из нескольких разных источников.
В модуле math есть особый объект, который называется NaN (Not a Number).
Такие объекты не уникальны, и даже не равны самим себе, так что вы можете иметь несколько подобных объектов, взятых из нескольких разных источников.
Аргументы командой строки
При запуске программ через терминал можно указывать аргументы через пробел. В Python список этих аргументов хранится в переменной argv во встроенном модуле
Первым элементом всегда является имя запускаемого скрипта, вторым и далее — непосредственно сами аргументы.
При запуске программ через терминал можно указывать аргументы через пробел. В Python список этих аргументов хранится в переменной argv во встроенном модуле
sys
. Первым элементом всегда является имя запускаемого скрипта, вторым и далее — непосредственно сами аргументы.
Что выведет на экран код сверху?
Anonymous Quiz
18%
[1] [] [2]
11%
1 0 2
28%
1 [] 2
43%
Будет вызвано исключение: элементов в списке меньше, чем переменных.
Функция reduce()
Функция
Параметры:
function - пользовательская функция, принимающая 2 аргумента,
iterable - итерируемая последовательность,
initializer - начальное значение.
Функция
reduce()
модуля functools кумулятивно применяет функцию function к элементам итерируемой iterable последовательности, сводя её к единственному значению. Параметры:
function - пользовательская функция, принимающая 2 аргумента,
iterable - итерируемая последовательность,
initializer - начальное значение.
Сортировка списка
Метод
В первой строке примера вы создаете список lst отказ затем вы разбираетесь в списке один раз, используя поведение сортировки по умолчанию и один раз, используя индивидуальное поведение сортировки только с первой буквой номера. Затем вы поменяете заказ элементов в отсортированном списке, используя
Метод
list.sort()
сортирует элементы списка на месте восходящей способности. Чтобы настроить поведение сортировки по умолчанию, используйте дополнительный ключ Аргумент, передавая функцию, которая возвращает сопоставимое значение для каждого элемента в списке. С дополнительным логическим Обратный Аргумент, вы можете переключиться с восходящего ( Reverse = false
) до поручения убывания ( Reverse = True
).В первой строке примера вы создаете список lst отказ затем вы разбираетесь в списке один раз, используя поведение сортировки по умолчанию и один раз, используя индивидуальное поведение сортировки только с первой буквой номера. Затем вы поменяете заказ элементов в отсортированном списке, используя
Reverse = True
аргументС помощью Python нужно записать данные в файл, но только в том случае, если файла ещё нет. Какой режим указать в инструкции open()?
Anonymous Quiz
15%
'x'
37%
Никакой. Нужна предварительная проверка os.path.exists()
41%
'w'
7%
'r'