摘要: python知识点,罗列如下:1、内置对象类型:numeric, string, tuple, list, dictionary, set, None, bool2、python的动态类型模型:类型属于对象而不是变量;3、语法细节:缩进、类C语法、复合语句;4、作用域法则(LEGB);5、特定的参数匹配模式:调用者+函数;6、lamda本质是表达式,依赖于作用域查找法则实现;7、生成器和迭代器;8、列表解析;9、import如何工作;10、import, from, reload;11、包导入;12、类命名空间树;13、类运算符重载;14、类的伪私有属性;15、静态和类方法;16、基于字符串的 阅读全文
posted @ 2012-02-27 21:14 John Lee 阅读(159) 评论(0) 推荐(0)
摘要: 简介从具体的程序观点来看,类是python的程序组成单元,就像函数和模块一样;类是封装逻辑和数据的另一种形式。python中的oop需要特别考虑:1.多重实例,类基本就是产生对象的工厂;(多对象产生)2.通过继承进行定制,类可以建立命名空间的层次结构;(命名空间继承)3.运算符重载,python提供了一些可以由类使用的钩子,从而能够中断并实现任何的内置类型运算;(运算符重载)本质python类的本质:1.class语句创建类对象并将其赋值给变量名;2.class语句内的赋值语句会创建类的属性;3.类属性提供对象的状态和行为;实例对象的本质:1.像函数一样调用类对象会创建新的实例对象;2.每个实 阅读全文
posted @ 2012-02-27 19:41 John Lee 阅读(385) 评论(1) 推荐(0)
摘要: 概述模块是最高级别的程序组织单元,它将程序代码和数据封装起来以便重用。模块导入时,模块文件的全局作用域变成了模块对象的对象的命名空间。import与include完全不同,执行步骤:1.找到模块文件;2.编译成位码;3.执行模块的代码来创建其所定义的对象;注:模块的import完全不同于C中的#include,并非简单的插入另一个文件。import除了搜索到模块文件外,还会将模块编译,并执行模块的代码,创建其所定义的对象(变量,函数,类)。fromfrom会把变量名复制到另一个作用域,可在脚本中直接使用变量名,而不需要通过模块。import和from都是隐形的赋值语句,可以嵌套在代码语句中:1 阅读全文
posted @ 2012-02-27 13:04 John Lee 阅读(265) 评论(0) 推荐(0)
摘要: 简介函数是python为了代码最大程度的重用和最小化代码冗余而提供的最基本的程序结构。函数基本原则:1、def是可执行的代码,可任意嵌套在语句中,实时执行的;2、def创建了一个对象并将其赋值给某一变量名;3、return将一个结果对象发送给调用者;4、函数是通过赋值(对象引用)传递的;5、global声明了一个模块级的变量并被赋值;6、参数、返回值以及变量并不是声明;python中的多态多态:一个操作的意义取决于被操作对象的类型;在python中,函数代码不应该关心特定的数据类型,更不能把函数限定在特定的类型上,应使其适用于所有类型。作用域LEGB法则:Local, Embedded, Gl 阅读全文
posted @ 2012-02-27 02:22 John Lee 阅读(566) 评论(0) 推荐(0)
摘要: 简介python使用类C的语法,但,将使用缩进作为语句的作用域标记。python语法规则语句是逐个执行的,除非你不这样编写;块和语句的边界会自动被检测;复合语句=首行+“:”+缩进语句;空白行、空格以及注释通常都会被忽略;文档字符串会被忽略,但会被保存并由工具显示; 阅读全文
posted @ 2012-02-27 02:08 John Lee 阅读(158) 评论(0) 推荐(0)
摘要: 概述程序由模块构成;模块包含语句;语句包含表达式;表达式建立并处理对象;python提供了强大的对象类型作为语言的组成部分。动态类型简介在python中,类型是在运行过程中自动决定的,而不是通过代码声明的。变量名没有类型,类型属于对象,而不是变量。从技术上来讲,对象有更复杂的结构而不仅仅是有足够的空间表现它的值那么简单,每个对象都有两个标准的头部信息:一个类型标志符去标示这个对象的类型,以及一个引用的计数器,用来表示是不是可以回收这个对象。变量总是一个指向对象的指针,而不是可改变的内存区域的标签:给一个变量一个新的值,并不是替换了原始的对象,而是让这个变量去引用完全不同的一个对象。内置对象预览 阅读全文
posted @ 2012-02-27 00:13 John Lee 阅读(333) 评论(0) 推荐(0)
摘要: Chapter4 向量空间概述从向量空间的角度,思考应用,体会线性代数的美和力量。本章内容:1、向量空间的基本定义;2、多种向量空间;3、秩;4、应用:离散信号、差分方程、马尔科夫链;4.1 向量空间和子空间向量空间的定义定义 一个向量空间是由一些被称为向量的对象构成的非空集合V,在这个集合上定义加法和标量乘法,服从以下公理。这些公理必须对V中所有向量u,v,w及所有标量c,d均成立。1.u,v之和表示成u+v,仍在V中;…4.V中存在一个零向量0,使得u + 0 = u;…6.u与标量c的标量乘法记为cu,仍在V中;…特别地,这里的“称为向量的对象”不仅仅限于R(n)中实数向量,也可能是离散 阅读全文
posted @ 2011-09-15 00:58 John Lee 阅读(801) 评论(0) 推荐(0)
摘要: Chapter3 行列式概述行列式是一个数,它由一些数字按一定方式排成的方阵所确定。本章内容:1、行列式的介绍;2、行列式的性质;3、克拉默法则、体积和线性变换;3.1 行列式的介绍行列式的标准定义采用递归的方式给出:定义:当n>=2,nxn矩阵A=[aij]的行列式形如+(-)a1jDetA1j的n个项的和,其中加号和减号交替出现,这里元素a11,a12…a1n来自A的第一行,即:DetA = a11*DetA11 – a12*DetA12 + … + (-1)^(1 + n)a1n * DetA1n将行列式按余因子展开式写出,等到定理1: 定理1 nxn矩阵A的行列式可按任意行或列的 阅读全文
posted @ 2011-09-14 23:44 John Lee 阅读(845) 评论(0) 推荐(0)
摘要: Chapter2 矩阵代数概述当需要处理涉及两个或更多个矩阵的线性代数问题,或处理大规模方程组时,需要使用矩阵代数作为工具。本章内容:1、矩阵运算;2、逆矩阵;3、分块矩阵和矩阵分解;4、子空间、维数、秩2.1 矩阵运算1、矩阵乘法事实:AB的每一列都是A的各列的线性组合,以B的对于列的元素为权。AB的每一行都是B的各行的线性组合,以A德对应行的元素为权。2、计算AB的行列法则3、矩阵乘法的性质4、乘幂、转置2.2 矩阵的逆定义:一个nxn矩阵(方阵)是可逆的,若存在一个nxn矩阵C使AC = I 且 CA = I称C是A的逆阵。应用逆矩阵求解矩阵方程(理论上)定理5 若A是可逆nxn矩阵,则 阅读全文
posted @ 2011-08-31 01:20 John Lee 阅读(513) 评论(0) 推荐(0)
摘要: Chapter 1、线性代数中的线性方程组概述:线性方程组是线性代数的核心,并由此引出线性代数中的诸多概念和理论。本章内容:1、介绍求解线性方程组的一个系统方法(行化简和阶梯型矩阵);2、研究线性方程组的等价性(与向量方程、矩阵方程),并把向量的线性组合问题转化为线性方程组的问题;3、线性表示、线性无关、线性变换的基本概念;本章的核心在于理解行化简和线性方程组的等价性。1.1-1.2 解线性方程组解线性方程组的一般方法:基本的思路是把方程组用一个更容易理解的等价方程组(即有相同解集)代替。事实:若两个线性方程组的增广矩阵是行等价的,则它们具有相同的解集。行化简算法(消去法)可用来解任意线性方程 阅读全文
posted @ 2011-08-22 18:49 John Lee 阅读(2120) 评论(0) 推荐(0)