码迷,mamicode.com
首页 > 其他好文 > 详细

Define Functions: Keyword Arguments

时间:2015-06-22 14:53:31      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:

Functions can also be called using keyword arguments of the form kwarg=value. For instance, the following function:

def parrot(voltage, state=‘a stiff‘, action=‘voom‘, type=‘Norwegian Blue‘):
    print("-- This parrot wouldn‘t", action, end=‘ ‘)
    print("if you put", voltage, "volts through it.")
    print("-- Lovely plumage, the", type)
    print("-- It‘s", state, "!")

accepts one required argument (voltage) and three optional arguments (state, action, and type). This function can be called in any of the following ways:

parrot(1000)                                          # 1 positional argument
parrot(voltage=1000)                                  # 1 keyword argument
parrot(voltage=1000000, action=‘VOOOOOM‘)             # 2 keyword arguments
parrot(action=‘VOOOOOM‘, voltage=1000000)             # 2 keyword arguments
parrot(‘a million‘, ‘bereft of life‘, ‘jump‘)         # 3 positional arguments
parrot(‘a thousand‘, state=‘pushing up the daisies‘)  # 1 positional, 1 keyword

but all the following calls would be invalid:

parrot()                     # required argument missing
parrot(voltage=5.0, ‘dead‘)  # non-keyword argument after a keyword argument
parrot(110, voltage=220)     # duplicate value for the same argument
parrot(actor=‘John Cleese‘)  # unknown keyword argument

In a function call, keyword arguments must follow positional arguments. All the keyword arguments passed must match one of the arguments accepted by the function (e.g. actor is not a valid argument for the parrot function), and their order is not important.

 

1  关键字参数得在位置参数后面;

2  关键字参数的顺序可以是任意的;

 

Define Functions: Keyword Arguments

标签:

原文地址:http://www.cnblogs.com/starnix/p/4593270.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!