BrightXiong 发表于 2023-3-11 16:21:09

函数-Ⅱ

>>> # 散列表(Hash table)也称为哈希表,其实就是一个稀疏数组(总是有空白元素的数组称为稀疏数组)
>>> # 将要存储的数据是先通过哈希函数(在 Python 中,这个函数是 hash())进行计算,获得一个哈希值,这个值决定了数据将存放在什么位置:
>>> # 位置参数 ,实参是按照形参定义的顺序进行传递的:

>>> def myfunc(s, vt , o):
...         return "".join((o, vt, s))
...
>>> myfunc("我", "打了", "小甲鱼")
'小甲鱼打了我'
>>> myfunc("小甲鱼", "打了", "我")
'我打了小甲鱼'

>>> # 使用关键字参数,我们只需要知道形参的名字就可以:
>>> myfunc(o="你", vt="打了", s="我")
'你打了我'

>>> # 位置参数必须是在关键字参数之前,之间也不行哈。
>>> # Python 还允许函数的参数在定义的时候指定默认值,这样以来,在函数调用的时候,如果没有传入实参,那么将采用默认的参数值代替
>>> def myfunc(s, vt, o="小甲鱼"):
...         return "".join((o, vt, s))
...
>>> myfunc("香蕉", "吃")
'小甲鱼吃香蕉'

>>> # 默认参数的意义就是当用户没有输入该参数的时候,有一个默认值可以使用,不至于造成错误。
>>> # 如果用户指定了该参数值,那么默认的值就会被覆盖:
>>> myfunc("香蕉", "吃", "不二")
'不二吃香蕉'

>>> # 如果要使用默认参数,那么应该把它们摆在最后:
>>> # 使用 help() 函数查看函数文档的时候呢,经常会在函数原型的参数中发现一个斜杠(/),
>>> # 这表示斜杠左侧的参数必须传递位置参数,不能是关键字参数,举个例子:
>>> help(sum)
Help on built-in function sum in module builtins:

sum(iterable, /, start=0)
    Return the sum of a 'start' value (default: 0) plus an iterable of numbers
   
    When the iterable is empty, return the start value.
    This function is intended specifically for use with numeric values and may
    reject non-numeric types.

>>> sum(, start=6)
12
>>> sum(, start=7)
13
>>> # 限制 “只能使用关键字参数” 的语法
>>> def abc(a, *, b, c):
...         print(a, b, c)
...
>>> # 参数 a 既可以是位置参数也可以是关键字参数,但参数 b 和参数 c 就必须是关键字参数,才不会报错:
>>> abc(1, 2, 3)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: abc() takes 1 positional argument but 3 were given
>>> abc(1, b=2, c=3)
1 2 3

match123_xbd 发表于 2023-3-31 17:03:19

{:5_109:}

pythonZHB 发表于 2023-3-31 21:16:30

{:5_106:}
页: [1]
查看完整版本: 函数-Ⅱ