序列构成的数组

时间:2022-01-24
本文章向大家介绍序列构成的数组,主要包括序列构成的数组使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

内置序列类型概览

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)

原文地址:https://www.cnblogs.com/shuchenhao/p/15840783.html