python函数参数

命名函数为 def approximate_size(size,a_kilobyte_is_1024_bytes=True):
Python 允许函数函数有默认值。如果函数被调用的时候没有指定参数,那么参数将使用默认值。不仅如此,通过使用命名参数还可以按照任何顺序指定参数。
第二个参数 a_kilobyte_is_1024_bytes 指定了一个默认值True 。 意思是这个参数是 optional (可选的) ,你可以在调用的时候不指定它,Python 将看成你调用的时候使用了 True 作为第二个参数。
1.**approximate_size(1000000000000, False)**正确
2****approximate_size(1000000000000)正确
3.approximate_size(size=4000,a_kilobyte_is_1024_bytes=False)
4.**approximate_size(a_kilobyte_is_1024_bytes=False,size=4000)**正确,说明命名参数顺序没有关系
5. approximate_size(a_kilobyte_is_1024_bytes=False,4000) 错误SyntaxError: non‐keyword arg after keyword arg
因为你在命名参数后面紧跟了一个非命名(位置的)的参数,这个一定不会工作。从左到右的读取参数列表,一旦你有一个命名的参数,剩下的参数也必须是命名的。
7. approximate_size(size=4000, False) 错误SyntaxError: non‐keyword arg after keyword arg只要你有一个命名参
数,它右边的所有参数也都需要是命名参数。

你可能感兴趣的:(PYTHON)