Что за звери *args и **kwargs
HTML-код
- Опубликовано: 21 сен 2024
- Немного поговорим о распаковке, звездочке *, позиционных и keyword аргументах, спецсимволах, а также о том как все это применять для args и kwargs
1) args и kwargs в параметрах функции - общепринятые имена, но можно использовать и другие
2) позволяет распаковать iterable/sequence, а ** распакуют словарь
3) если нет никаких спецсимволов, то аргументы функции можно передавать как позиционно, так и keyword (то есть ключ=значение). Важно помнить, что позиционные всегда идут раньше keyword, при этом keyword аргументы между собой не обязаны хранить порядок.
4) спецсимвол / в параметрах функции говорит, что все, что ДО него должно передаваться как позиционные аргументы
5) спецсимвол * (без указания переменной), говорит о том что все, что ПОСЛЕ него должно передаваться как keyword аргумент
6) *args в параметрах функции соберет все позиционные аргументы в кортеж (tuple)
7) **kwargs в параметрах функции соберет все keyword аргументы в словарь (dict)
Почитать:
docs.python.or...
docs.python.or...
Важно понабирать эти примеры, поэкспериментировать, понять для себя роль * и **
Присоединяйтесь к помощи каналу, будет интересно)
✔️Бусти boosty.to/pyth...
✔️Юмани 410011506612886
Будь первым везде и всегда, включай уведомления о новых выпусках 🔔
Смотри там где удобно🤩
✔️ python_...
✔️ boosty.to/pyth...
✔️ / pythonrussian
✔️ t.me/python_ru...
✔️ dzen.ru/python...
✔️ rutube.ru/chan...
#Python #PythonRussian #PyCharm
Как по мне самая лучшая подача материала по пайтону на ютубе. Без воды, без всяких ненужных пауз и т.п
Наконец-то внятное объяснение, как всегда без воды 20 из 10 =)
спасибо за высокую оценку
Два топовых канала в ру сегменте по питону, которые отлично дополняют друг друга - Ваш и Олега Молчанова. Огромная Вам благодарность, что продолжаете радовать нас качественным материалом, который очень сильно помогает в освоении питона.
Очень здорово разобрал тему.
По звездочкм наконец-то открылись глаза, много раз я пересматриваю видосы когда действительно пришло время что можно это применять, и начинаешь более детально изучать. Видосы Ваши действительно помогают, очень помогают, как минимум мне
Спасибо на добром слове, буду продолжать
До этого объяснения много инфы пересмотрено, и, даже проекты в жизнь ушли, а полного понимания не было... спасибо, все сложилось
Это лучший канал по Python из всех которых я видел)
напоминает Матрицу.. Тенк загрузи мне знание аргс и кваргс - 30 минут - готово)) УЖЕ, как обычно, никто другой мне не мог доходчиво объянить)) Спасибо в который раз уже)
Спасибо
Спасибо! Мне понравилось! Классное объяснение!!!
Отличное видео. Всё сразу понятно
Очень доходчиво! Спасибо)
Как всегда прекрасно. Наконец-то внятное объяснение, класс, подписка, лайк, колоколчик
спасибо =)
@@PythonRussian просто отдыхаю слушая ваши видео. Никак не напрягает мозг. Что очень хорошо
@@ХалилМаденбай код только не забывай писать и все пробовать, практиковаться, а то так расслабишься что до кода не дойдет )))
@@PythonRussian ну вы сразу спалили меня😀
*крутое видео **люблю python
спасибо, очень крутое объяснение. по полочкам)
print('Спасибо за контент')
Расскажите, пожалуйста, о декораторах функций и об их практическом применении.
понял, сделаем!
вот начало положено, введение так сказать ruclips.net/video/q4o_1cXAS-c/видео.html
Как всегда прекрасно👍
спасибо, буду стараться
Спасибо Вам!
Слэш в аргументах полезен, когда передаём в функцию кортеж, а в нём сплитованный парсинг, например, расскажите, пожалуйста, только как использовать кваргсы с частью или полностью указанными значениями по умолчанию.
Upd: а нет, уже понял. Реально супер гайды и темы нужные.
привет, а можете подробнее привести пример и может даже ссылку на pastebin с набросками кода показать? Чего то не могу придумать ситуации для чего это может пригодиться.
@@PythonRussian спасибо вам за действительно отличные гайды. Конкрентно сейчас сперва было не понятно как при **kwargs задавать ключевые аргументы по умолчанию, но потом понял, когда на примере принта объяснили, что он хочет принимать и как в него передавать
охренеть!
Запишите пожалуйста урок по регулярным выражениям
к сожалению сам в них слаб, использую редко, хотя конечно питон с регулярками работает хорошо и в некоторых задачах без них не обойтись. Даже посоветовать почитать ничего не могу по этой теме((
@@PythonRussian в любом случае, у Вас более опыта чем у нас, интересующихся, я бы тоже с удовольствием послушал о рег выражениях, и пусть ролик будет минут 5
@@ВладимирГригорьевич-у2р ну хорошо, раз интересно -сделаю, чисто обзорное видео.
@@PythonRussian от чего просьба такая, от того что Вы понятно излагаете, вообще доходчиво для чайника, потому и взор на Ваши видео пристальны. понятно что глобальная сеть располагает массой информацией, но всё же =) вобщем будем ждать, с нетерпением
вот он! ruclips.net/video/f-FJHEMUN_M/видео.html
Опечатка
2) **позволяет распаковать iterable/sequence, а *** распакуют словарь
(по одной звёздочке Ютюб крадёт для выделения жирным)
фиксед
Где новые крутые видосики?
съемка крутых видосиков тратит время и силы, надо ждать. Вот по регуляркам ruclips.net/video/f-FJHEMUN_M/видео.html
@@PythonRussian да, понимаю. Самое главное качество👍
dict = {}
def upd(**kwargs):
dict.update(kwargs)
Иногда удобно такую функцию использовать