Task06
函数与Lambda表达式
1.函数
-
怎么给函数编写⽂档?
def MyFirstFunction(name): "函数定义过程中name是形参" # 因为Ta只是一个形式,表示占据一个参数位置 print('传递进来的{0}叫做实参,因为Ta是具体的参数值!'.format(name)) MyFirstFunction('老马的程序人生') # 传递进来的老马的程序人生叫做实参,因为Ta是具体的参数值! print(MyFirstFunction.__doc__)
-
怎么给函数参数和返回值注解?
def func(x: int, y: int) -> int: '''return type int, return x add y ''' return x+y print(func(1,3)) # 4
-
闭包中,怎么对数字、字符串、元组等不可变元素更新。
要修改闭包作用域中的变量则需要
nonlocal
关键字 -
分别根据每一行的首元素和尾元素大小对二维列表 a = [[6, 5], [3, 7], [2, 8]] 排序。(利用lambda表达式)
a = [[6, 5], [3, 7], [2, 8]] a = sorted(a,key=lambda i:i[0]) print(a) a = sorted(a,key=lambda i:i[-1]) print(a) ''' [[2, 8], [3, 7], [6, 5]] [[6, 5], [3, 7], [2, 8]] '''
-
利用python解决汉诺塔问题?
def move(n, a, b, c):
if n == 1:
print(a, "->", c)
else:
print(a, "->", b)
move(n - 1, a, b, c)
print(b, "->", c)
move(64, "a", "b", "c")