Cómo escribir parámetros variables y parámetros predeterminados al definir funciones en Python
Agregue * delante del nombre del parámetro para indicar parámetros posicionales variables,
Agregue ** para indicar parámetros de palabras clave variables
Se puede usar ParameterName=Default; para especificar El valor predeterminado del parámetro.
Aquí hay un ejemplo:
#/ Hacer que los parámetros anteriores sean solo parámetros posicionales
def f(a=1, b=2, /, c = 3, *args, **kwargs): print(a, b, c, *args, kwargs)
def f2(a=1, b=2, c=3, *args, * * kwargs): print(a, b, c, *args, kwargs)
#* Haga que los siguientes parámetros sean solo parámetros de palabras clave
def f3(a=1, b =2 , *, c=3, d=4): print(a, b, c, d)
#Haga que los argumentos anteriores sean solo argumentos posicionales
def f4(a =1 , b=2, /, c=3, d=4): print(a, b, c, d)
f()
f(11, 22 )
#f(a=11, b=22)
f(c=666)
f(1, 2, 3, 4.5, x =5 , y=6)
f2()
f2(a=11, b=22)
f2(c=888)
f2("a", "b", "c", 1, 2, p="ok")
f3(1001, 2222)
f3( a= 1001)
f3(111, c=333, d=444)
f3(6, 6, c=6, d=6)
# f3(6, 6, 6, 6)
f4(1001, 2222)
#f4(1001, b=2222)
f4( 1001)
#f4(1001)
#f4(1001).f4(a=1001)
f4(111, c=333, d= 444)
f4(1, 2, 3, 4)?
La captura de pantalla del resultado de la ejecución es la siguiente: