首页 > 代码库 > 我爱Python之位置参数、关键字参数、默认参数

我爱Python之位置参数、关键字参数、默认参数

1、位置参数:
>>> def check_web_server(host, port, path):
             print ....
 
>>> check_web_server(‘www.python.org‘, 80, ‘/‘) 三个参数的顺序必须一一对应,且少一参数都不可以
 
2、(函数调用里的)关键字参数:
可以让函数更加清晰、容易使用,同时也清除了参数的顺序需求,关键字参数通过“键-值”形式加以指定,用于函数调用
>>> check_web_server(port=80, host=‘www.python.org‘, path=‘/‘) (三个参数的位置可以随意)
 
3、(函数签名里)默认参数:
为参数提供默认值,这样向它们传递参数就不是必需的了,用于函数定义(注意:所有位置参数必须出现在可选参数前,包括函数定义和调用)
 
>>> def check_web_server(host, port=80, path=‘/‘):  # 正确的
        print ...
>>> def check_web_server(path=‘/‘, host, port=80):  # 错误的(位置参数host必须放在最前面)
                print ...
 
>>> check_web_server(‘www.python.org‘)  # ok(port和path为默认值)
>>> check_web_server(‘www.python.org‘, port=8080)  # ok(path为默认值)
>>> check_web_server(port=8080, ‘www.python.org‘)  # no (位置参数必须在最前面)

我爱Python之位置参数、关键字参数、默认参数