大数协python训练营task06学习笔记

一、学习知识点概要
函数与lambda表达式
二、学习内容
在这里插入图片描述

三、学习问题与解答
1.怎么给函数编写文档?

def func(x):
	...
	return 0

2.怎么给函数参数和返回值注解?

def func(x: int, y: int) -> int:
'''return type int, return x add y '''
	return x+y

3.闭包中,怎么对数字、字符串、元组等不可变元素更新。
用nonlocal 关键字。
4.分别根据每一行的首元素和尾元素大小对二维列表a=[[6,5],[3,7],[2,8]]排序。(利用lambda表达式)

a= [[6, 5], [3, 7], [2, 8]]
b=sorted(a,key=(lambda x:x[0]))
print(b)
c=sorted(a,key=(lambda x:x[1]))
print(c)
#[[2, 8], [3, 7], [6, 5]]
#[[6, 5], [3, 7], [2, 8]]

5.利用python解决汉诺塔问题?


有a、b、c三根柱子,在a柱子上从下往上按照大小顺序摞着64片圆盘,
把圆盘从下面开始按大小顺序重新摆放在c柱子上,尝试用函数来模拟
解决的过程。
(提示:将问题简化为已经成功地将a柱上面的63个盘子移到了b柱)

#用内嵌函数
def move(n,a,b,c):   
    if n==1:
        print(a,'-->',c)
    else:
        move(n-1,a,c,b)  
        print(a,'-->',c)
        move(n-1,b,a,c)   
move(64,a,b,c)

四、学习思考与总结
1.对于python很多内容还不是很了解,需要进一步学习。
2.学习文档中的代码有一些也看得云里雾里,要多多巩固。
3.对于后面函数这些还是存在很多疑问,前面的一些知识也记不太清需要回顾。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值