一 列表推导式
nums = [1,2,3,4,5,6,7,8,9]
jishu = [ _ for _ in nums if _ % 2 ]
遍历列表中的每个元素。
二 filter函数
是Python内置的一个函数
它接受一个函数和一个可迭代对象作为参数
匿名函数
lambda,实现简单。最左的x为return, 也为接收,冒号后的为执行的操作。
右侧的nums为外界传入的数据。
最后会返回一个函数和一个可迭代对象
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
jishu = list(filter(lambda x: x % 2, nums))
print(jishu)
注:filter会返回一个迭代器,如果转list不保存到变量中,则下次将是空列表。
一行代码实现1~100的数字的和
sum(list(range(1,101)))
python自带的sum输入对象是可迭代的。可以是列表,数组,可迭代对象。此时sum最多有两个参数第一个参数是可迭代的。当有两个参数时,第二个参数只能是个数。
在Python中,可迭代的数据类型包括列表、元组、字典和集合等,它们可以通过迭代器进行遍历,从而方便地对其中的元素进行操作和处理。
不可变类型深入分析,小技巧
当定义多个相同的整数时,这些整数对象的 id 可能会相同,这是因为这些整数指向的是同一内存位置上的同一个缓存对象。这种优化可以提高程序的效率,避免重复创建对象的开销。