序列构成的数组
内置序列类型概览
Python标准可用C实现了丰富的序列类型,列举如下:
容器序列:list、tuple和collections.deque这些序列能存放不同类型的数据
扁平序列:str、bytes、bytearray、memoryview和array.array这类序列只能容纳一种类型。
容器序列存放的是他们所包含的任意类型的对象的引用,而扁平序列里面存放的是值而不是引用。
序列类型可以按照能否被修改来分类:
可变序列:list、bytearry、array.array、collections.deque和memoryview
不可变序列:tuple、str和bytes
列表推导和生成器表达式
2.1
1 sys='#$%^&' 2 codes=[] 3 for s in sys: 4 codes.append(ord(s)) 5 print(codes)
2.2
1 sys='#$%^&' 2 code=[ord(s) for s in sys] 3 print(code)
只用列表推导来创建新的列表,并且尽量保持简短,如果列表推的代码超过两行,你可能就要考虑是不是得用for循环重写了。列表推导可以帮助我们把一个序列或是其他的可迭代类型中的元素过滤或是加工,然后再新建一个列表。python内置的filter和map函数组合起来也能达到也能达到这一效果,但是可读性上打了一个不小的折扣。
列表推导同filter和map的比较
1 sys='#$%^' 2 beyond_ascii=[ord(s) for s in sys if ord(s)>127] 3 print(beyond_ascii) 4 beyond_ascii=list(filter(lambda c:c>127,map(ord,sys))) 5 print(beyond_ascii)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下