1. IDE说明: 所有的案例用Anacoda中的Jupiter工具进行交互式讲解. 2. 版本和安装: NumPy从如下网站安装:http://sourceforge.net/projects/numpy/files. 我们通过环境查看相关的版本.如果电脑上安装了Anaconda的话这些版本基本上都是最新版本的. 如果Anaconda的库不是最新的可以通过Prompt进行安装和更新.可以参照如下博客,非常简单.https://blog.csdn.net/xiexu911/article/det…
1. NumPy的基础使用涵盖如下内容: 数据类型 数组类型 类型转换 创建数组 数组索引 数组切片 改变维度 2. NumPy数组对象: NumPy中的ndarray是一个多维数组对象,该兑现共有两部分组成: 实际的数据 描述这些数据的元数据. 大部分的数组操作仅仅修改元数据部分而不改变底层的实际数据(其实就是一种浅拷贝理解). ndarray支持更高的维度,因为数组一般是同质的,所以数组所有的元素类型必须是一致的. NumPy与Python一样数组的下标都是从0开始的. 2.1 numpy.…
1. 前言: 本部分会讲解在Python环境下进行数值运算.以NumPy为核心,并讲解其他相关库的使用,诸如Matplotlib等绘图工具等. C.C++和Forttran等变成语言各有各的优势,但是他们不是交互式语言,并且被很多人认为过于复杂.常见的商业产品还有Matlab.Maple和Mathematica.这些产品提供了强大的脚本语言,但和通用编程语言比起来,功能依然有限.另外还有一些类似于Matlab的开源工具,如R.GNU Octave和Siclab.显然,作为编程语言,他们都不如Py…
1. 读写文件(基本) savetxt.loadtxt i2 = np.eye(2) print(i2) np.savetxt(r"C:\Users\Thomas\Desktop\eye.txt",i2) c,v = np.loadtxt(r"C:\Users\Thomas\Desktop\data.csv",delimiter=',',usecols=(6,7),unpack=True) print(c,v) #[336.1 339.32 345.03 344.3…
说道这里我们需要稍微暂停一下.前面我们说到了类是作为一个对象存放容器.这个容器里面有属性和方法.最好的理解类的方式就是把类想想成一个容器. 然后构造了一个析构函数和构造函数,然后又对object和self进行了解释,最后又说了一下重写.我们发现类作为一个存放对象的容器,其类也是一个对象. 类也有自己的__main__,__init__,__class__等属性.我们发现了,越来越多的时候,在Python里面用了很多下划线来表示这些意思.下划线分双下划线和单下划线两种,一共又存在5中组合,这5中组…
Numba:高性能计算的高生产率 在这篇文章中,笔者将向你介绍一个来自Anaconda的Python编译器Numba,它可以在CUDA-capable GPU或多核cpu上编译Python代码.Python通常不是一种编译语言,你可能想知道为什么要使用Python编译器.答案当然是:运行本地编译的代码要比运行动态的.解译的代码快很多倍.Numba允许你为Python函数指定类型签名,从而在运行时启用编译(这就是“Just-in-Time”,即时,也可以说JIT编译).Numba动态编译代码的能力…
1.先叙述静态方法: 我们知道Python调用类的方法的时候都要进行一个实例化的处理.在面向对象中,一把存在静态类,静态方法,动态类.动态方法等乱七八糟的这么一些叫法.其实这些东西看起来抽象,但是很好理解.这里面有一个难点就是静态方法的理解,我们先叙述这个概念. 比如在C#语言中,我们一般在在一个类前面加上类似于staci这样的关键字 public 类名{ static void 方法(){ } } 一般这个时候方法可以直接用“类名.方法名”的方式直接调用类中的方法.其实这种方法叫做直接引用的方…
1. 限制访问的问题: 如果学过C# 语言的我们可以知道C# 语言有get和set方法.我们之前想要获取父类中的私有变量,只能通过写一个set和get的函数进行访问或者通过类生成的新关键字来访问私有属性(_类名__私有变量).其实Python也给我们提供了一种get和set的方法.其内容就是一种装饰器的作用,采取@property和@变量名.setter的方式. 举例说明1: # 属性直接对外暴露 # 不安全,没有熟虑过滤 # 使用限制访问的话,需要些set和get方法. from types…
1. 构造函数: 为什么要有构造函数? 打一个比方:类的创建就是好比你创建了好了一种格式的房间,你租给上一个住户的后,里面会对方很多“垃圾”和不规则的物品摆放.构造函数就是下一个住户再使用的时候进行物品的初始化摆放,防止下一个用户再使用的时候会出现没有初始化物品错放的错误等. 构造函数的格式: __init__( ): 注意:在使用创建对象的时候会自动调用,构造函数用于初始化类实例的状态.如果不显式的创建构造函数,默认会自动添加一个构造函数.其实由于没有本身都会带上这个构造函.但是还是要写上比较…
1. 设计一个类: 设计一个类主要从三个方面进行考虑: 第一:类名:类名要见名知意.首字母大写. 第二:属性. 第三:方法. 备注:在Python中有些东西并不是绝对化的事情,有些根据Python社区里面有些约定俗称的规定,在Python这种动态语言当中随处可见,比如像__._单双下划线的使用就是这个问题的一个体现. 2. 创建一个类: 类:一种数据类型,本身并不占内存空间,根据所学过的number.string.boolean等类似,用类创建实例化对象. 格式: class 类名(父类列表):…