1. IDE说明: 所有的案例用Anacoda中的Jupiter工具进行交互式讲解. 2. 版本和安装: NumPy从如下网站安装:http://sourceforge.net/projects/numpy/files. 我们通过环境查看相关的版本.如果电脑上安装了Anaconda的话这些版本基本上都是最新版本的. 如果Anaconda的库不是最新的可以通过Prompt进行安装和更新.可以参照如下博客,非常简单.https://blog.csdn.net/xiexu911/article/det…
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…
1. NumPy的基础使用涵盖如下内容: 数据类型 数组类型 类型转换 创建数组 数组索引 数组切片 改变维度 2. NumPy数组对象: NumPy中的ndarray是一个多维数组对象,该兑现共有两部分组成: 实际的数据 描述这些数据的元数据. 大部分的数组操作仅仅修改元数据部分而不改变底层的实际数据(其实就是一种浅拷贝理解). ndarray支持更高的维度,因为数组一般是同质的,所以数组所有的元素类型必须是一致的. NumPy与Python一样数组的下标都是从0开始的. 2.1 numpy.…
一.函数:函数定义关键字def  后跟函数名称 def 函数名(参数):             ...     函数体     ...     返回值 案例: # 定义函数 def say_hei(): print('hello world!!') # 函数调用 say_hei() 调用函数 函数的调用:函数名加括号 1 先找到名字 2 根据名字调用代码 函数的定义主要有如下要点: def:表示函数的关键字 函数名:函数的名称,日后根据函数名调用函数 函数体:函数中进行一系列的逻辑计算,如:发…
Python数据分析基础教程(第2版)(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1_FsReTBCaL_PzKhM0o6l0g 提取码:nkhw 复制这段内容后打开百度网盘手机App,操作更方便哦 内容简介  · · · · · · NumPy是一个优秀的科学计算库,提供了很多实用的数学函数.强大的多维数组对象和优异的计算性能,不仅可以取代Matlab和Mathematica的许多功能,而且业已成为Python科学计算生态系统的重要组成部分.但与这些商业产…
单独记录装饰器这个知识点是因为这个知识点是非常重要的,必须掌握的(代码大约150行). 了解装饰器之前要知道三个知识点 作用域,上一篇讲到过顺序是L->E->G->B 高阶函数: 满足下列其中一种即可称之为高阶函数: a.把一个函数名当做实参传递给另一个函数 b.返回值中包含函数名 3.闭包 闭包是由函数及其相关的引用环境组合而成的实体(即:闭包=函数+引用环境),通俗讲法是:在一个外函数中定义了一个内函数,内函数里运用了外函数的临时变量,并且外函数的返回值是内函数的引用.这样就构成了一…
描述符的属性方法 __get__(self, instance, owner): 用于访问属性,返回属性的值 __set__(self, instance, value): 用于给属性赋值时,返回属性的值 __delete__(self, instance): 用于删除属性时,不返回任何内容 将某种特殊类型的类的实例指派给另一个类的属性(注意:是类属性,不是实例属性),而这种特殊类型的类是实现了__get__,__set__,__delete__这三个方法中的一个或多个,此时这个实例被称为描述符…
Tornado是一个基于python的web框架,xxxxx 安装 python -m pip install tornado 第一个Tornado程序 安装完毕我们就可以新建一个app.py文件,放入下面的代码直接运行就可以了,然后在浏览器访问127.0.0.1:8888 import tornado.ioloop import tornado.web class MainHandler(tornado.web.RequestHandler): def get(self): self.writ…
大纲 1 简介 2 存在形式 3 放置位置 4 变量 5 注释 6 数据类型 7 时间处理 8 语句和异常 9 函数及其作用域 1.JS简介 JavaScript是世界上最流行的脚本语言,因为你在电脑.手机.平板上浏览的所有的网页,以及无数基于HTML5的手机App,交互逻辑都是由JavaScript驱动的. 简单地说,JavaScript是一种运行在浏览器中的解释型的编程语言. 那么问题来了,为什么我们要学JavaScript?尤其是当你已经掌握了某些其他编程语言如Java.C++的情况下.…
标准库:一些最爱 re re模块包括对正則表達式的支持,由于以前系统学习过正則表達式,所以基础内容略过,直接看python对于正則表達式的支持. 正則表達式的学习,见<Mastering Regular Expressions>(精通正則表達式) re模块的内容 最重要的一些函数 函数 描写叙述 compile(pattern[,flags]) 依据包括正則表達式的字符串创建模式对象 search(pattern,string[,flags]) 在字符串中寻找模式 match(pattern,…
以Mark Lutz著的<Python学习手册>为教程,每天花1个小时左右时间学习,争取两周完成. --- 写在前面的话 2013-7-24 23:59 学习笔记 1,Python中的大多数OOP故事都可以简化为一个表达式:object.attribute 当类启用时,为了找出attribute首次出现的地方,Python会先搜索Object,然后是该对象之上的所有类,安装由下至上.由左至右的方式搜索. 2,调用类的函数时,总是隐含着类的实例.附加在实例上的属性只属于那些实例,但附加在类上的属…
abs() 函数返回数字的绝对值 __author__ = "Tang" a = -30 all() 函数用于判断给定的可迭代参数iterable中的所有元素是否都为True,如果是则返回True,否则返回False 如果iterable的所有元素不为0.''".False或者iterable为空,all(iterable)返回True,否则返回False:注意 空列表 空元组 空字典 空字符串是True __author__ = "Tang" a = a…
在导入自定义的模块时,除了指定模块名之外,也需要指定目录,由于Python把目录称作包,因此,这类导入被称为包导入.包导入把计算机上的目录变成Python的命名空间,而目录中所包含的子目录和模块文件则对应命名空间中的属性. Python已经导入的模块保存在一个内置的sys.modules字典中,以便记录哪些模块已经记录了. 一,模块搜索路径 导入过程首先需要定位导入文件的位置,也就是,告诉Python到何处去找到要导入的文件,因此,需要设置模块的搜索路径.在大多数情况下,Python会自动到默认…
一.变量总结 1.1 变量定义 记录某种状态或者数值,并用某个名称代表这个数值或状态. 1.2 变量在内存中的表现形式 Python 中一切皆为对象,数字是对象,列表是对象,函数也是对象,任何东西都是对象.而变量是对象的一个引用(又称为名字或者标签),对象的操作都是通过引用来完成的.例如,[]是一个空列表对象,变量 a 是该对象的一个引用 在 Python 中,「变量」更准确叫法是「名字」,赋值操作 = 就是把一个名字绑定到一个对象上.就像给对象添加一个标签. a = 1 整数 1 赋值给变量…
阅读目录 一.迭代器 1. 迭代的概念 #迭代器即迭代的工具(自定义的函数),那什么是迭代呢? #迭代:指一个重复的过程,每次重复都可以称之为一次迭代,并且每一次重复的结果是下一个迭代的初始值(例如:罚写作业100遍) while True: #只是单纯地重复,因而不是迭代 print('===>') l=[1,2,3] count=0 while count < len(l): #迭代 print(l[count]) count+=1 2.为何要有迭代器? 什么是可迭代对象? 什么是迭代器对…
充电时刻--模块 python的标准安装包含一组模块,称为标准库. 模块 >>> import math >>> math.sin(0) 0.0 模块是程序 不论什么python程序都能够作为模块导入. $ cat hello.py #!/usr/bin/python print "Hello,signjing!" $ ./hello.py Hello,signjing! 如果将python程序保存在/home/ggz2/magiccube/mysh…
面向对象基础 基础内容介绍详见一下两篇博文: 面向对象初级篇 面向对象进阶篇 其他相关 一.isinstance(obj, cls) 检查是否obj是否是类 cls 的对象 1 2 3 4 5 6 class Foo(object):     pass   obj = Foo()   isinstance(obj, Foo) 二.issubclass(sub, super) 检查sub类是否是 super 类的派生类 1 2 3 4 5 6 7 class Foo(object):     pa…
内容概要 二分查找.冒泡 random time os sys pickle json shelve re 1.二分查找和冒泡排序 01. 二分查找 二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法.但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列. 优点: 快 缺点: 必须是有序序列 核心思想: 掐头结尾找中间,出口:左边比右边大目标数与中间数去比较,比中间数小则砍掉左边的一半,再去和剩下的中间数比较.以此类推. # 非递归算法 lst…
递归的案例:阶乘 1*2*3*4*5*6*7- def func(num):     if num == 1:         return 1     return num * func(num - 1)   ret = func(7) print(ret) 反射 def f1():    print('f1') f1:函数名 'f1':字符串 commons: def login():     print('登录页面')   def logout():     print('退出页面')  …
Python循环语句 接下来将介绍Python的循环语句,程序在一般情况下是按顺序执行的. 编程语言提供了各种控制结构,允许更复杂的执行路径. 循环语句允许我们执行一个语句或语句组多次. Python提供了for循环和while循环(在Python中没有do...while循环): for循环 要计算1+2+3,我们可以直接写表达式: >>>1 + 2 + 3 6 要计算1+2+3+...+10,勉强也能这样写出来,但是,如果要计算1+2+3+...+1000,直接写表达式就不可能了.…
字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This PEP proposes a new system for built-in string formatting operations, intended as a replacement for the existing '%' string formatting operator…
目录 模块介绍 time和datetime模块 random os sys shutil json和pickle shelve xml处理 yaml处理 configparser hashlib re正则表达式 1.      模块介绍 1.1    定义 能够实现某个功能的代码集合(本质是py文件)  test.p的模块名是test包的定义:用来从逻辑上组织模块,本质就是一个目录(必须带有一个__init__.py文件) 1.2    导入方法 a) Import module b) Impo…
序列 数据结构:通过某种方式组织在一起的数据元素的集合,这些数据元素能够是数字或者字符,甚至能够是其它数据结构. python中,最主要的数据结构是序列. 序列中的每一个元素被分配一个序号--即元素的位置,也称为索引.第一个索引是0,第二个是1,以此类推. 序列概览 python包括6种内建的序列:列表.元组.字符串.Unicode字符串.buffer对象和xrange对象. 列表和元组的主要差别在于,列表能够改动,元组不能. 使用后者的理由一般是技术性的,它与python内部的运作方式有关.这…
异常 什么是异常 Python用异常对象来表示异常情况.遇到错误后,会引发异常.假设异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止运行: >>> 1/0 Traceback (most recent call last): File "<pyshell#0>", line 1, in <module> 1/0 ZeroDivisionError: integer division or modulo by…
模块 Python中,如果要引用一些内置的函数,该怎么处理呢?在Python中有一个概念叫做模块(module) 简单地说,模块就是一个保存了Python代码的文件. 模块分类: 1)内置模块 2)自定义模块 3)第三方模块 模块存在方式: ".py" "文件夹" paramiko 模块(这个模块需要安装,具体安装方法很简单,这里不做说明) 用途:linux 主机远程 用到这个模块 模块的导入 在Python中用关键字import来引入某个模块,比如要引用sys这个…
递归 在函数内部,可以调用其他函数; 如果一个函数在内部调用自身本身,这个函数就是递归函数. 例如,我们来计算阶乘: n! = 1 x 2 x 3 x ... x n, 用函数f1(n)表示,可以看出: f1(n) = n! = 1 x 2 x 3 x ... x (n-1) x n = (n-1)! x n = f1(n-1) x n 所以,f1(n)可以表示为 n x f1(n-1),只有n=1时需要特殊处理. 于是,f1(n)用递归的方式写出来就是: def f1(n): if n==1:…
装饰器: 学前必备知识: def f1(): print "f1" f1() #表示函数执行 f1 #表示函数,指向内存地址 f1 = lambda x: x + 1 f1() # 执行这个lambda表达式,而不再是原来的f1函数,因为函数f1被重新定义了 装饰器代码剖析: 假如有这么一个需求,公司临时规定将某块业务加上访问权限,因为代码太多,又不想改变原有已经封装好的 代码,于是乎,基础平台的同志们想出了这么一个解决办法:利用装饰器解决 那么什么是装饰器?这个问题先留着,直接看代码…
学习Python类时,我们明白了类的本质,以及所谓的面向对象编程思想强调的对事物本身的属性,我们对某一类事物进行描述——采用了很多方法,这些方法描述了类的属性(比如猫科动物的眼睛,四肢,是否哺乳类等等)老虎属于猫科动物,因此我们可以用猫科动物的类描述来描述老虎.但除了这些共性之外,老虎自身也具有一定的差异性,这就引出了继承这一概念: 即我们在描述老虎这一对象时,可以保留猫科动物这个类的属性,同时为老虎描述新的 属性,当然,我们也是创建老虎类来描述老虎(毕竟还有东北虎,华南虎之分).下面请见一段代…
递归的案例:阶乘 1*2*3*4*5*6*7- def func(num):     if num == 1:         return 1     return num * func(num - 1)   ret = func(7) print(ret) 反射 def f1():    print('f1') f1:函数名 'f1':字符串 commons: def login():     print('登录页面')   def logout():     print('退出页面')  …