fluent Python 读书笔记(四)

第二章内容回顾

1.bisect 模块

bisect.bisect(sequence, needle) 查找needle 在sequence中应该处在的位置

bisect.insort(my_list, new_item) 直接插进list中


2.数组

怎么建立

1.from array import array

f = array('类型码',。。。)

数组有很强大的tofile, fromfile能力,因为它其实存的不是float对象,而是机器字节表述!


3.内存视图

memoryview(一个数组等)

返回的东西会和原数组共享内存但不改动原数组

还可以任意转换格式

memv.cast('B',...)



4.numpy

numpy.arange(数字) 建一个0-数字的numpy.ndarray

a.shape 属性可访问几维,几个元素

a.shape = 3, 4 变成2维

a[2,1]访问第二行第一列

a[:, 1]访问所有第一列

a.transpose() 转置

a *= 5 对每个元素都乘5



5.队列

删除第一个元素,或在第一个元素前插入东西会特别快

建立

from collections import deque

dq = deque(range(10), maxlen=10)

maxlen 一旦定下不可更改,当已经有十个元素时,在后面加会让前面的挤出去,前面加同理

rotate(n) 正数代表把最右边的n个移到最左边,不改变相对关系

负数代表把最左边的n个移到最右边


6.扁平序列 容器序列

扁平序列大概就指标准数组和numpy数组,他们只能保存一些原子性的数据

容器序列可以保存自己这种类型

所谓原子操作是指不会被线程调度机制打断的操作


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值