Python入门系列(六)一篇学会python函数

2022-09-05 10:01:39 浏览数 (1)

函数

函数是只在调用时运行的代码块。

代码语言:javascript复制
def my_function():
  print("Hello from a function")

my_function()

信息可以作为参数传递到函数中。

代码语言:javascript复制
def my_function(fname):
  print(fname   " Refsnes")

my_function("Emil")
my_function("Tobias")
my_function("Linus")

如果不知道将传递到函数中的参数数量,请在函数定义中的参数名称前添加一个*。

代码语言:javascript复制
def my_function(*kids):
  print("The youngest child is "   kids[2])

my_function("Emil", "Tobias", "Linus")

您还可以使用key=value语法发送参数。

代码语言:javascript复制
def my_function(child3, child2, child1):
  print("The youngest child is "   child3)

my_function(child1 = "Emil", child2 = "Tobias", child3 = "Linus")

如果不知道将传递到函数中的关键字参数数量,请在函数定义中的参数名称前添加两个星号:*。

代码语言:javascript复制
def my_function(**kid):
  print("His last name is "   kid["lname"])

my_function(fname = "Tobias", lname = "Refsnes")

Lambda

lambda函数是一个小型匿名函数。lambda函数可以接受任意数量的参数,但只能有一个表达式。

语法

代码语言:javascript复制
lambda arguments : expression
代码语言:javascript复制
x = lambda a : a   10
print(x(5))

Lambda函数可以接受任意数量的参数

代码语言:javascript复制
x = lambda a, b : a * b
print(x(5, 6))

为什么要使用Lambda函数?

代码语言:javascript复制
def myfunc(n):
  return lambda a : a * n

mydoubler = myfunc(2)

print(mydoubler(11))

0 人点赞