ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

流畅的python读书笔记②:序列构成的数组

2021-08-01 22:32:59  阅读:227  来源: 互联网

标签:codes 推导 读书笔记 python 列表 symbols 数组 序列 2.2


文章目录


2.1 内置序列类型

按存放数据类型分类

容器序列——存放的是它们所包含的任意类型的对象的引用,有:list(列表)、tuple (元组)和 collections.deque (双向列表)。

扁平序列——存放具体的值,显然,扁平序列更加紧凑,但是其仅能存放如字符、字节、数值等基础数据类型,有:str(字符串)、bytes(字节)、bytearray(字节数组)、memoryview (内存查看对象)和 array.array(数组)。

按是否能被修改来分类

可变序列
list、bytearray、array.array、collections.deque 和 memoryview。

不可变序列
tuple、str 和 bytes。

2.2 列表推导和生成器表达式

列表推导是构建列表(list)的快捷方式,而生成器表达式则可以用来创建其他任何类型的序列。

2.2.1 列表推导和可读性

代码2-1 把一个字符串变成Unicode码位的列表

#《流畅的python》p59

#常规写法
>>> symbols = '$¢£¥€¤'
>>> codes = []
>>> for symbol in symbols:
#ord()函数以一个字符为参数,返回它对应的ascii编码或Unicode编码
... codes.append(ord(symbol))
...
>>> codes
[36, 162, 163, 165, 8364, 164]

#列表推导
>>> symbols = '$¢£¥€¤'
>>> codes = [ord(symbol) for symbol in symbols]
>>> codes
[36, 162, 163, 165, 8364, 164]

声明

本文来自《流畅的python》以及笔者自己的思考,如有错误,欢迎指正。

标签:codes,推导,读书笔记,python,列表,symbols,数组,序列,2.2
来源: https://blog.csdn.net/fishfuck/article/details/119304132

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有