1. 初识数组 import numpy as np a = np.arange(15) a = a.reshape(3, 5) print(a.ndim, a.shape, a.dtype, a.size, a.itemsize) # 2 (3, 5) int64 15 8 ndim,数组的维度数,二维数组就是 2 shape,数组在各个维度上的长度,用元组表示 dtype,数组中元素的数据类型,比如 int32, float64 等 size,数组中所有元素的总数 itemsize,数组中每…
1. 读写 txt 文件 a = list(range(0, 100)) a = np.array(a) # a.dtype = np.int64 np.savetxt("filename.txt", a) b = np.loadtxt("filename.txt") # b.dtype = np.float64 savetxt 默认保存为 float64 格式的,注意保存和读取时 dtype 要一致,否则读出的数据可能会乱码. numpy.loadtxt nump…
在Python中数组中的每一项可以是不同的数据类型 元组:只能读不能写的数组 aTuple=(1,'abc','tmc',79.0,False) print aTuple[1:3] print type(aTuple) # tuple:元组 aTuple[1]=5 #在这,如果要对元组进行修改,就会报错:'tuple' object does not support item assignment Tuple 没有的方法: [1] 不能向 tuple 增加元素,没有 append . exten…
1 信号的基本描述 Signal信号(其全程为软中断信号)是Linux系统编程中非常重要的概念,信号是异步进程中通信的一种方式. 作用是通知进程发生了异步事件.进程之间可以调用系统来传递信号, 本身内核也可以发送信号给进程, 告诉该进程发生了某个事件. 在应用层将消息传递给内核监控,当消息处理完毕后,内核将消息反馈给应用层:这样操作不会出现阻塞等待,保持信号处理的持续性. 相对于共享内存,信号更加偏向于系统层面的,linux系统也是通过信号来管理进程的,而且系统也规定了某些进程接到某些信号后的行…
1. 实现两个数组相加,在数据量特别大的时候 产生数组: (1)  从列表产生数组:a=[0,1,2,3] a=np.array(1) a (2)  从列表传入 a=np.array([1,2,3,4]) (3)  生成全0的数组 np.zeros(5) (4)  生成全1的数组 np.ones(5,dtype=’bool’)àdtype可以用来指定数据类型 (5)  可以使用fill方法将数组设为指定值 (6)  生成整数序列 a=np.arange(1,10)从1开始生成数据,一直到9 (7…
import numpy as np a = np.arange(6).reshape(2,3) print ('原始数组是:') print (a) print ('\n') print ('迭代输出元素:') for x in np.nditer(a): print (x, end=", " ) print ('\n') import numpy as np a = np.arange(6).reshape(2,3) for x in np.nditer(a.T): print (…
import numpy as np x = np.empty([3,2], dtype = int) print (x) import numpy as np # 默认为浮点数 x = np.zeros(5) print(x) # 设置类型为整数 y = np.zeros((5,), dtype = np.int) print(y) # 自定义类型 z = np.zeros((2,2), dtype = [('x', 'i4'), ('y', 'i4')]) print(z) import n…
PIL,全称 Python Imaging Library,是 Python 平台一个功能非常强大而且简单易用的图像处理库.但是,由于 PIL 仅支持到Python 2.7,加上年久失修,于是一群志愿者在 PIL 的基础上创建了兼容 Python 3 的版本,名字叫 Pillow ,我们可以通过安装 Pillow 来使用 PIL. 1. pip 安装 pillow 在 Ubuntu 下通过一个简单的命令sudo pip3 install pillow即可成功安装库. 2. 打开.保存.显示图片…
面试的时候被问到这样一个问题:有A.B两个数组,找出B中有A中没有的所有元素(换言之即是求差集B-A).当时比较紧张,用了最原始的双重嵌套循环逐个比较,很显然这种时间复杂度高达O(n2)的算法相当low. 回去之后经过思考,有了一个新的思路,即先对A.B进行排序,时间复杂度为O(nlog2n),再对排序后的数组同时遍历进行比较,这里的时间复杂度为O(n),这样总体的时间复杂度为O(nlog2n),效率比之前有了改进.(PS:在网上搜索过之后,发现还有hash的方法可以更简单,这里暂不详叙.) 于…
1 简介 DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表. 或许说它可能有点像matlab的矩阵,但是matlab的矩阵只能放数值型值(当然matlab也可以用cell存放多类型数据),DataFrame的单元格可以存放数值.字符串等,这和excel表很像. 同时DataFrame可以设置列名columns与行名index,可以通过像matlab一样通过位置获取数据也可以通过列名和行名定位,具体方法在后面细说. 2 创建DataFrame 首先声…