Forwarded from Python 🇺🇦
Параметри *args та **kwargs
Усі хоч раз бачили такий запис, і зараз ми дізнаємося, що то за символи. Одразу скажу, що
У прикладі функція приймає обов'язковий аргумент
Конструкція з
#practice // Python 🇺🇦
Усі хоч раз бачили такий запис, і зараз ми дізнаємося, що то за символи. Одразу скажу, що
args і kwargs — загальноприйняті імена змінних, а розбирати ми будемо зірочки перед ними.У прикладі функція приймає обов'язковий аргумент
value, а інших аргументів вона ніби то не чекає. У такому разі *args пакує всі не іменовані аргументи в кортеж, а **kwargs – усі іменовані у словник.Конструкція з
*args, **kwargs виходить досить корисною, якщо ми не знаємо, хто і в яких цілях буде використовувати нашу функцію. Тобто, ми можемо запхати в аргументи практично будь-що.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Знаходимо схожі рядки
У стандартній бібліотеці Python існує модуль
Цей метод шукає "найкращі" можливі збіги. Перший аргумент задає рядок, другий - список, в якому виконується пошук.
Також у метод можна передати необов'язковий аргумент
#practice // Python 🇺🇦
У стандартній бібліотеці Python існує модуль
difflib, який має метод get_close_matches. Цей метод шукає "найкращі" можливі збіги. Перший аргумент задає рядок, другий - список, в якому виконується пошук.
Також у метод можна передати необов'язковий аргумент
n, який задає максимальну кількість збігів, що повертаються.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Створюємо безкінечний ітератор
Функція
Фішка полягає в тому, що коли елементи послідовності закінчуються, ітерація починається знову з першого елемента.
Але якщо ви проходите циклом по такому ітератору, то важливо передбачити вихід з циклу, інакше він стане нескінченним (як у нас в першому випадку на картинці).
Ми також можемо скористатися
#practice // Python 🇺🇦
Функція
cycle() з itertools приймає на вхід об'єкт, що ітерується, і створює нескінченний ітератор, що циклічно повертає елементи даного об'єкта.Фішка полягає в тому, що коли елементи послідовності закінчуються, ітерація починається знову з першого елемента.
Але якщо ви проходите циклом по такому ітератору, то важливо передбачити вихід з циклу, інакше він стане нескінченним (як у нас в першому випадку на картинці).
Ми також можемо скористатися
islice(), який поверне ітератор по підмножині переданого об'єкта.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Виводимо вкладені словники та списки
При виведенні вкладених словників та списків за допомогою звичайного
Але у стандартній бібліотеці є модуль
З цікавих аргументів є
#practice // Python 🇺🇦
При виведенні вкладених словників та списків за допомогою звичайного
print() ми отримуємо все в один рядок та у нерозбірливому вигляді.Але у стандартній бібліотеці є модуль
pprint, котрий допоможе вивести подібну справу у гарному форматі – достатньо в коді замінити print() на pprint.pprint().З цікавих аргументів є
depth, що відповідає за глибину вкладеності при виведенні, а також width, який відповідає за ширину виведення в консолі.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Генерація капчі
Сьогодні покажемо створення найпростішої капчі. Для цього нам знадобиться модуль
Все максимально просто, за нас по суті все робить написаний у модулі код. Створюємо об'єкт зображення
#practice // Python 🇺🇦
Сьогодні покажемо створення найпростішої капчі. Для цього нам знадобиться модуль
captcha та Pillow, який використовується для створення зображень у captcha.Все максимально просто, за нас по суті все робить написаний у модулі код. Створюємо об'єкт зображення
ImageCaptcha, на який буде нанесений текст. Після чого викликаємо метод write із заданим текстом та ім'ям файлу, в який буде записано зображення.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
isdisjoint
Метод
#practice // Python 🇺🇦
Метод
isdisjoint() повертає True, якщо жоден із елементів не присутній в обох наборах. Інакше він повертає False. Ви можете використовувати список, кортеж, словник або рядок. У цьому випадку isdisjoint() спочатку перетворює ітерації у набори, а потім перевіряє, чи не перетинаються вони.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Отримуємо вихідний код об'єкта
Вбудований модуль
На разі поговоримо лише про
До аргументів достатньо передати необхідний об'єкт. Але важливо відзначити, що вбудовані функції не вдасться проінспектувати.
#practice // Python 🇺🇦
Вбудований модуль
inspect допомагає розробникам досліджувати вже написані програми.На разі поговоримо лише про
getsource(), який повертає весь вихідний код функції, класу чи модуля у вигляді рядка.До аргументів достатньо передати необхідний об'єкт. Але важливо відзначити, що вбудовані функції не вдасться проінспектувати.
#practice // Python 🇺🇦
Forwarded from Микита Лук'яниця
Ну для имён есть faker, речки думаю надо апи искать хз
Forwarded from Python 🇺🇦
Forwarded from Python 🇺🇦
Emoji
Для виведення emoji в python існує кілька методів.
1. Так як всі emoji по суті є Unicode символами, то ми можемо використовувати коди символів з Unicode-таблиці, попередньо перед виведенням замінюючи в коді + на
2. У всіх emoji існують короткі CLDR імена, які ми також можемо використовувати для виведення.
3. Можна також використовувати модуль
#practice // Python 🇺🇦
Для виведення emoji в python існує кілька методів.
1. Так як всі emoji по суті є Unicode символами, то ми можемо використовувати коди символів з Unicode-таблиці, попередньо перед виведенням замінюючи в коді + на
000.2. У всіх emoji існують короткі CLDR імена, які ми також можемо використовувати для виведення.
3. Можна також використовувати модуль
emoji. У функцію emojize передається ім'я CLDR, пробіли в якому замінені на нижні підкреслення і додані двокрапки на кінцях.#practice // Python 🇺🇦