简述如何使用默认参数声明某些函数 ?
参考答案:
在Python中,你可以在函数定义时为某些参数提供默认值,这就是所谓的默认参数。默认参数允许你在调用函数时省略某些参数,而函数会使用你在定义时指定的默认值。这在创建具有多种用途的函数时非常有用。
下面是一个简单的例子来说明如何使用默认参数:
def greet(name='World'):
print(f'Hello, {name}!')
# 调用函数时没有提供参数,因此使用默认值 'World'
greet() # 输出: Hello, World!
# 调用函数时提供了一个参数,因此不使用默认值
greet('Python') # 输出: Hello, Python!
在这个例子中,greet
函数有一个名为 name
的参数,其默认值为 'World'
。当我们调用 greet()
(没有提供任何参数)时,name
参数会使用默认值 'World'
,因此输出会是 Hello, World!
。然而,当我们调用 greet('Python')
并提供一个参数时,name
参数会使用我们提供的值 'Python'
,因此输出会是 Hello, Python!
。
注意,默认参数只会在函数定义时计算一次。如果你将可变的对象(如列表或字典)作为默认参数,并且函数修改了该对象,那么每次调用函数时都会看到这个修改。因此,通常建议将不可变的对象(如整数、字符串、元组或冻结集)用作默认参数,或者将 None
用作默认参数,并在函数内部创建一个新的可变对象。例如:
def add_to_list(item, my_list=None):
if my_list is None:
my_list = []
my_list.append(item)
return my_list
# 调用函数时,my_list 会是一个新的空列表
list1 = add_to_list('apple') # 输出: ['apple']
list2 = add_to_list('banana') # 输出: ['banana']