求m,n中各个元素的乘积 矩阵 m=[[1,2,3],[4,5,6],[7,8,9]] n=[[2,2,2],[3,3,3],[4,4,4]] 其中i,j对应的是相应下标 i是m最外头的中括号对应的下标 j是里面三个中括号对应的下标 通过元素下标 获取各个数据 for i in range(len(m)): for j in range(len(m[i])): print(m[i][j]*n[i][j],end=' ') s=[m[i][j]*n[i][j] for i in range(len(m)) for j in range(len(m[i]))] print(s) 内部循环 s=[[m[i][j]*n[i][j] for j in range(len(m[i]))] for i in range(len(m))] print(s) m中1,4,7分别与n中的2,3,4对应相乘 单个元素下标相匹配 s=[[m[i][j]*n[i][j] for i in range(len(m))] for j in range(len(m[i]))] print(s) 例6 结合两个列表的元素,如果元素之间不相等的话 a=[1,2,3] b=[3,1,4] for i in a: for j in b: if i!=j: print((i,j),end=' ') 推导 s=[(i,j) for i in a for j in b if i!=j] print(s) 例7 结合三个列表的元素,如果元素之间不相等的话 a=[1,2,3] b=[2,3,4] c=[2,5,4] for i in a: for j in b: for k in c: if i!=j and i!=k and j!=k: print((i,j,k),end=' ') s=([[i,j,k] for i in a for j in b for k in c if i!=j and i!=k and j!=k]) print(s) 创建一个列表 俩个元祖 (number,square) (2,4,8,9) print([(x,x**2) for x in range(6)]) 枚举 只能从固定的选择中选择合适的选项 限定数据类型中的属性值 保证数据的准确性 定义枚举时,成员名称不允许重复 值也不可以重复 当成员值相同时又被叫做改成员的别名 定义枚举要导入enum模块 枚举定义用class关键字,继承Enum类。 from enum import Enum, unique @unique unique 装饰器 唯一 限制枚举不能定义相同值的成员 class color(Enum): 枚举是对于一些既定的值或不被允许随意赋值的量 每个成员的数据类型就是它所属的枚举 自定义的类/枚举 又叫自定义数据类型 orange=1 red_reia=11 red=2 blue=3 green=4 indigo=5 purple=6 yellow=7 print(color.red) 根据枚举的值 获取枚举的名字 print( color(1)) 获取枚举值 print(color['red'].value) 创建 生成一个枚举数据 co=color['purple'] print('枚举数据名字',co.name) print('枚举数据的值',co.value) 当成一个可迭代元素进行输出 for c in color: print(c,end=' ') 遍历 for color in color.__members__.items(): print(color) 枚举之间的比较 枚举成员可进行同一性比较 print(color.blue is color.blue) 输出结果为True print(color.red is not color.blue) 输出结果为True 枚举成员可进等值比较 print(color.blue == color.red) 输出结果为Flase print(color.blue != color.red) 输出结果为True 枚举成员不能进行大小比较 对应值可以比较大小 print(color.red < color.blue)
部分推导和枚举
最新推荐文章于 2025-10-12 16:03:34 发布
7万+

被折叠的 条评论
为什么被折叠?



