首页 > 其他分享 >3月03日课后总结

3月03日课后总结

时间:2023-03-03 21:24:26浏览次数:22  
标签:总结 03 .__ 迭代 iter __ 课后 print next

3/03课后总结

配合匿名函数使用的方法

1. map(函数名, 要遍历的数据)  # 内部本质就是for循环,再记住两个参数的位置和作用

2. zip(拉链)
l = [1, 2, 3, 4, 5, 6, 7, 8]
l1 = [11, 21, 31, 41, 51, 61, 71, 81]
l2 = [1, 2, 3, 4]
l3 = [12, 22, 32, 42, 52, 62, 72, 82]
l4 = [13, 23, 33, 43, 53, 63, 73, 83]
res = zip(l, l1, l2, l3, l4)
print(list(res))

3. max和min
print(max(l1))
print(min(l4))

"""
	如果是字典就是比较key键的大小
"""
dic = {
    'zhangsan': 1000,
    'lisi': 2000,
    'wanger': 3000,
    '444': 4000
}
print(max(dic))
print(max(dic, key=lambda key: dic[key]))
print(min(dic))
print(min(dic, key=lambda key: dic[key]))
  # 如果函数中key值被传了函数,那么就根据所传的返回值进行比较

4. 过滤
res = filter(lambda x: x > 20, l1)
print(list(res))

可迭代对象

"""
	迭代就是每次的结果都需要上一次的结果
	内置有__iter__方法的对象都是可迭代对象
	目前所学的凡是可以用for遍历的都是可迭代对象
"""
print(c.__iter__()) = print(iter(c))  # 这两种方式相等

迭代器对象

"""
	既有__iter__方法, 也含有__next__方法的称为迭代器对象
	文件对象即是可迭代对象又是迭代器对象
	可迭代对象调用__iter__方法
	可以给我们提供一种不依赖索引取值的方法
"""
l = [1, 2, 3, 4, 5, 6, 7]
x = l.__iter__()
print(x.__next__())  # 1
print(x.__next__())  # 2
print(x.__next__())  # 3

print(l.__iter__().__next__())  # 1
print(l.__iter__().__next__())  # 2
print(l.__iter__().__next__())  # 3

for循环内部原理

"""
	for循环内部执行流程:
		1. 把关键字in后面的数据类型转为了迭代器 __iter__
		2. 循环next取值
		3. next取值完毕之后也报错了,自动处理错误并且结束while循环
"""
l = [1, 2, 3, 4, 5, 6, 7]
x = l.__iter__()
while True:
    print(x.__next__())
    # 这么写会报错,其实for也会报错,只是不显示出来

捕捉异常

"""
	异常就是错误的信号,如果不处理,异常后面的都不会正常执行
	异常由Traceback开始
	XXXError:这个现实错误的类型
	:后面会显示错误的原因
	语法错误是不被允许的
	逻辑错误虽然允许但是要避免
	常见的错误类型有:
	NameError
    IndexError
    KeyError
    ValueError
    ZeroDivisionError
"""
  # 捕捉异常:
    try:
      	被监测的代码
    except 错误的类型1 as e:
        错误处理,e:错误的原因
  # 万能捕捉
except Exception as e:
    print(e)
"""
	try except异常捕捉需要注意
    	1. try里面被监测的代码尽量少
    	2. 在明显没有错误的代码不要被捕捉
"""

标签:总结,03,.__,迭代,iter,__,课后,print,next
From: https://www.cnblogs.com/juzixiong/p/17177001.html

相关文章

  • day03(2023.3.2)
    今日份学习:1.字符char2.布尔型boolean 3.运算符算数运算符 4.赋值运算符和扩展赋值运算符 5.关系运算符 6.逻辑运算符 7.位运算 8.字符串 9.......
  • 2022.3.3每日总结
    HashSet基于HashMap来实现的,是一个不允许有重复元素的集合。HashSet允许有null值。HashSet是无序的,即不会记录插入的顺序。HashSet不是线程安全的,如果多个线程......
  • 每日总结 3.3
    今天学习了数据的添加,和本地日期的获取。<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"......
  • 每日总结
    今天练习了数据库的添加,学习了日期的获取packagecom.example.meiri;importandroidx.appcompat.app.AppCompatActivity;importandroid.content.Intent;importand......
  • 每日总结-23.3.3
    Android中数据库的创建•数据库类:SQLiteDatabase•数据库帮助类:SQLiteOpenHelper方法一•db=SQLiteDatabase.openOrCreateDatabase(DATABASE_NAME,Context.MODE_PRI......
  • 每日总结(10)
    所用时间:晚上两个小时代码:71博客:1知识点:     储存;1/SharedDreferences;(1)共享参数使用场景2/SQLiter(1)排序(2)SQLiterDatabase(3)SQLiterOpenHel......
  • HTM'L
    <html><hend><title>美食</title></hend><body><h3align="center"><b>必吃美食</b></h3><tablealign="center"cellpandding="10px"style="bord......
  • 【总结】2023-03-01 Swap and Sort
    SwapandSort题意有一个\(1\dotsn\)的全排列\(p_1\dotsp_n\)。有\(m\)种操作,第\(i\)种操作可以交换\(p_{a_i}\)和\(p_{b_i}\)请问最多执行\(10^5\)次......
  • 3月3号总结
    7.1.4类的多态publicclassMain{publicstaticvoidmain(String[]args){Pointpoint=newPoint(3,4);PointcolorPoint=newColorPoi......
  • 3.3号今日总结
    今天学习了文本视图(文本框)相关的知识:代码如下:步骤1:编写矩形边框的Drawable:<?xmlversion="1.0"encoding="utf-8"?><shapexmlns:android="http://schemas.androi......