Python/Учебник Python 2.6: различия между версиями

Содержимое удалено Содержимое добавлено
Нет описания правки
Строка 967:
parrot(voltage=5.0, 'dead') # неименованный аргумент следом за именованным
parrot(110, voltage=220) # повторное значение аргумента
parrot(actor='John CleeseCena') # неизвестное имя аргумента</source>
 
В общем случае, список аргументов должен содержать любое количество позиционных (<tt>positional</tt>) аргументов, за которыми должно следовать любое количество именованных аргументов, и при этом имена аргументов выбираются из формальных параметров. Неважно, имеет формальный параметр значение по умолчанию или нет. Ни один из аргументов не может получать значение более чем один раз — имена формальных параметров, совпадающие с именами позиционных аргументов, не могут использоваться в качестве именующих в одном и том же вызове<ref>''(Прим. перев.)'' В главе о функциях автор отталкивается не от привычного по другим учебникам первоначального полного описания определения функций, а уже потом — описания их вызова, а объединяет обе темы вместе (как минимум в случае с непостоянным списком аргументов это возможно непривычно, но оправдано), отдавая приоритет описанию вызова. Учебник рассчитан на тех, кто уже программирует на каком-либо языке программирования и потенциально не должен смутить читателя.</ref>. Вот пример, завершающийся неудачей по причине описанного ограничения: