Python面向过程编程的八个关键要素
[*]基本数据类型
[*]
[*]integral类型
整形:不可变类型
布尔型true false
[*]浮点类型
浮点数
复数
十进制数字
[*]字符串:不可变对象
[*]python的数据结构
[*]程序=数据结构+算法
[*]通过某种方式(元素编号)组织在一起的数据元素的集合,这些元素可以是数字或字符,还可以是其它数据结构
[*]python最基本的数据结构是序列
[*]序列中的每一个元素被分配一个序号--元素的位置,即索引,索引从0开始编号
[*]python包含6种内建的数据序列
[*]列表
[*]元组
[*]字符串
[*] Unicode字符串
[*]buffer对象
[*]xrange对象
[*]对象引用(变量)
[*]python将所有数据存储为内存对象
[*]python中,变量事实上是指向内存对象的引用
[*]动态类型:在任何时刻,只要需要,某个对象引用都可以重新引用一个不同对象(或不同的数据类型)
[*]内建方式type()用于返回给定数据项的数据类型
[*]“=”用于将变量名与内存中的某对象绑定: 如果对象实现存在,就直接进行绑定;否则,由“=”创建引用对象
[*]变量命名规则
[*]字母,数字,下划线,不能一数字开头
[*]区分大小写
[*]禁止使用保留字
python2和python3保留字有所不同
命令惯例
[*]以单一下划线的变量名(_x)不会被from module import * 语句导入
[*]前后有双下划线的变量名(__x__)是系统定义的变量名,对python解释器有特殊意义
[*]以两个下划线开头的但结尾没有下划线的变量名(_ _x)是类的本地变量
[*]交互式模式下,变量名“_”用于保存最后表达式的结果
note:变量名没有类型,对象才有组合数据类型
[*]数据结构:通过某种方式组织在一起的数据元素的集合
[*]python常用的组合 数据类型
[*]序列类型
[*] 列表:使用[]创建
[*] 元组:使用()创建
[*] 元组是不可变序列
[*] 字符串也属于序列类型
[*]集合类型
[*] 集合
[*]映射类型
[*] 字典--字典是可变序列
[*]python中,组合数据类型也是对象,因此其可以嵌套
[*]实质上,列表和元组并不是真正存储数据,而是存放对象引用
[*]python对象可以具有其可以被调用的特定函数
[*]元组、列表以及字符串等数据类型是”有大小的“,即长度可使用内置函数len()测量
逻辑操作符--任何程序设计语言的基本功能4组逻辑运算符:
[*]身份操作符
is:判定左端对象引用是否相同于右端对象引用;亦可以与none进行;
比较操作符 <,>,<=,>=,!=,==
成员操作符 in或not in:测试成员关系
逻辑运算符 and、or、not
控制流语句--过程式编程语言的基本控制机制常见控制流语句:
[*]if :
[*]while
[*]for...in
[*]try
算术操作符
[*]pyhton 提供了完整的算术操作符
[*]很多python数据类型可以使用增强型的复制操作符:-=、+=等
[*]同样的功能,使用增强型操作符的性能较好
[*]python的int类型是不可变的因此增强型赋值的实际过程是创建一个新的对象来存储结果后将变量名执行了重新绑定
输入/输出--现实中,具有实际功能的程序必须能够读取输入,以及产生输出,并写到终端或文件中
[*]输入输出
[*]输出
[*]python3 :print()函数
[*]python: print 语句
[*]输入
[*]input()
[*]raw input()
[*]python解释器提供了3种标准文件对象
[*]标准输入
在sys模块中以sys.stdin形式提供
标准输出 在sys模块中以sys.stdout形式提供
标准错误 在sys模块中以sys.stderr形式提供
从技术角度来讲,print是把一个或多个对象转换为其文本 表达形式,然后发送给标准输出或另一个类似文件的流
[*]python中,打印与文件和流的概念联系紧密
[*] 文件写入方法是把字符串写入到任意文件
[*] print默认把对象打印到stdout流,并加了一些自动的格式化
[*]print只是python的人性化特性的具体实现, 它提供了sys.stdout.write()的简单接口, 再加上一些默认格式
print接受一个逗号分隔的对象列表, 并为行尾自动添加一个换行符, 如果不需要,则在最后一个元素后添加逗号print的格式化输出(print "String %format1 %format2 ..." % (variable1,variable2,...))
[*]%后面可以使用的修饰符(有的话,则只能按如下顺序)
[*]%[(name)][.precision]typecode
[*] [(name)]位于括号中的一个属于后面的字典的键名,用于选出一个具体项
[*] 字典;kv集合,可变对象
[*] 如d={‘a’:1,‘b’:3} print "%(a)-10d %(b)0.3g" % d
[*]常见的修饰符
[*]d,i十进制整数或长整数
[*]u 无符号整数或长整数
[*]o 八进制整数或长整数
[*]x 十六进制整数或长整数
[*]X 十六进制整数
[*]f 浮点数,如[-]m.dddddd
[*]e 浮点数,如[-]m.dddddde±xx
[*]E 浮点数,如[-]m.ddddddE±xx
[*]g,G指数小于-4或更高精度时使用%e或%E,否则使用%f
[*]s 字符串或任意对象,格式化代码使用str()生成字符串
[*]r 同repr()生成的字符串
[*]c 单个字符
[*] % 字面量
[*] 为下面标志中的一个或多个
[*] -:表示左对齐,默认为右对齐
[*] +:表示包含数字符号,正数也会带+
[*] 0:表示一个零填充
[*] :一个指定最小宽度的数字
[*] [.precision]:一个小数点,用于按照精度分割字段的宽度
[*] typecode:一个数字,指定要打印字符串中的最大字符个数,浮点数中小数点的位数,或者整数的最小位数
函数的创建与调用----函数是实现模块化编程的基本组件
[*]python使用def语句定义函数
[*]函数可以参数化,通过传递不同的参数来调用
[*]每个python函数都有一个返回值,默认为None,或使用“return value”明确定义返回值
[*]def语句会创建一个函数对象,并同时创建一个指向函数的对象调用
[*]函数也是对象, 可以存储在组合数据类型中, 也可以作为参数传递给其它函数
[*]callable()可用与测试函数是否可调用
[*]def functionNAME(arguments): suite
[*]python有众多内置函数
[*]python标准库拥有众多内置模块,这些模块拥有大量函数
[*]python模块实际上就是包含python代码的.py文件,其拥有自定义的函数与类及变量等
[*]导入模块使用import语句进行,够跟模块名称(不能指定模块文件名的后缀.py)
[*]导入函数模块后,可以访问其内部包含的任意函数、类及变量
页:
[1]