Size: a a a

2021 November 09

DS

David Shiko in SPb Python
Ну как и стандартная IDE питона для винда
источник

DS

David Shiko in SPb Python
источник

IV

Iuliia Volkova in SPb Python
print(type(args))
источник

DS

David Shiko in SPb Python
Это само собой. Я просто подметил, что напечатать со * можно, а вы вести тип нет. Хотя обычно что можно напечатать, у того можно и тип узнать
источник

IV

Iuliia Volkova in SPb Python
принт принимает сколько угодно аргументов, ты когда делаешь *args ты берешь и раскладываешь элементы тапла или листа как порядковые аргументы на вход в функцию
источник

IV

Iuliia Volkova in SPb Python
type ждет только 1 аргумент для определения типа, если ты в qaz передаш не 1,2, а только 1, то тип тебе определится
источник

IV

Iuliia Volkova in SPb Python
т.е *args, тоже самое в твоем кейсе, если бы ты написал type(1,2)
источник

DS

David Shiko in SPb Python
Логично) Как то я упустил из виду, что *args может быть просто набором аргументов.
С другой стороны ты когда-нибудь встречала, что бы "callable" (метод или ф-я) возвращала набор аргументов? Всегда возвращается tuple в таком случае
источник

IV

Iuliia Volkova in SPb Python
да, если ты про return 1,2,3,
источник

IV

Iuliia Volkova in SPb Python
там tuple
источник

DS

David Shiko in SPb Python
Вот и я о том. Получается приходит неопределенная структура
"*args" и тип ее узнать никак нельзя потому что return *args или s = *args; return s являются невалидными инстуркциями. Вот так просто с помощью штатных ограничений разрабоы питона отделались от вопроса "а что за тип "*args"
источник

IV

Iuliia Volkova in SPb Python
нет) *args это всегда определенная структура, args - это всегда tuple
источник

IV

Iuliia Volkova in SPb Python
если тебе надо узнать типы аргументов то просто проитерируйся по args и сделай принт тайп каждого элемента
источник

DS

David Shiko in SPb Python
Докажи! 😂
источник

DS

David Shiko in SPb Python
Ну тогда list и tuple тоже выдадут одинаковые результаты
источник

IV

Iuliia Volkova in SPb Python
В смысле? Это функционал Python языка, доку надо читать ) что тут доказывать
источник

DS

David Shiko in SPb Python
Ну в пайтоне для всего кроме keywords (return, break, etc) можно применить type. Кроме...
источник

IV

Iuliia Volkova in SPb Python
Причём тут return? Ты не можешь его передать в аргс
источник

IV

Iuliia Volkova in SPb Python
Ты либо что-то вообще не то фундаментально представляешь, либо я вообще не понимаю о чем ты
источник

IV

Iuliia Volkova in SPb Python
читай документацию, вот тут есть блок https://docs.python.org/3/glossary.html parameter и там объяснено что такое *args, что такое *kwargs
источник