python基础教程1218.ppt
主要内容主要内容 python概述概述 python基础基础 python对象对象 条件和循环条件和循环 函数函数 模块模块 面向对象编程面向对象编程 文件相关文件相关 异常异常什么是什么是Python Python 优雅而健壮的编程语言优雅而健壮的编程语言 注重如何解决问题注重如何解决问题Python的特点 高级高级 面向对象面向对象 可移植性可移植性 可扩展性可扩展性 可嵌入性可嵌入性 健壮性健壮性 解释性解释性 易学易读易用易学易读易用为什么是为什么是python 简单易学,功能丰富简单易学,功能丰富 与与c、c+、java相比相比 与其他的脚本语言相比与其他的脚本语言相比 perl:对符号语法的过度使用:对符号语法的过度使用 javascript:通常嵌入到:通常嵌入到html网页,依赖浏览网页,依赖浏览器器下载和安装下载和安装 下载:下载:http:/www.python.org/ 安装安装 环境变量:环境变量:Path=C:Program FilesPython24Hello World 第一个第一个Python程序程序 print “Hello World!” 命令行命令行 编辑器编辑器Python的语法特色的语法特色 注释注释 (#) 继续继续 () 多个语句构成的代码组多个语句构成的代码组 (:) 缩进分隔缩进分隔 模块模块 help主要内容主要内容 python概述概述 python基础基础 python对象对象 条件和循环条件和循环 函数函数 模块模块 面向对象编程面向对象编程 文件相关文件相关 异常异常Python的基础的基础变量变量 变量的赋值变量的赋值 astring = “hello” 增量赋值:增量赋值:x += 1 (python2.0开始开始)、 多重赋值:多重赋值:x = y = z = 1 多元赋值:多元赋值:x, y, z = 1, 2, “hello” ( x, y, z) = (1, 2, “hello”) 提高可读性提高可读性Python的基础的基础标识符标识符 第一个字符必须是字母或下划线第一个字符必须是字母或下划线_ 其他字符可以是字母、数字或下划线其他字符可以是字母、数字或下划线 大小写敏感大小写敏感 关键字:关键字:Python的基础的基础无处不在的引用无处不在的引用 变量的定义:在第一次赋值时自动声明变量的定义:在第一次赋值时自动声明 Python是一种动态类型的语言是一种动态类型的语言 无处不在的引用:无处不在的引用: Python中的每个值中的每个值(而不是变量而不是变量)都有一个唯一的都有一个唯一的标识标识 任何变量名之间的赋值都是引用的赋值任何变量名之间的赋值都是引用的赋值 x = 3 y = x z = y主要内容主要内容 python概述概述 python基础基础 python对象对象 条件和循环条件和循环 函数函数 模块模块 面向对象编程面向对象编程 文件相关文件相关 异常异常Python的对象的对象 任何类型的值都是一个对象任何类型的值都是一个对象 Python对象的三个特性对象的三个特性 身份:用身份:用id()查看查看 类型:用类型:用type()查看查看 值值Python数据类型数据类型概述概述 标准类型标准类型 数字数字 Integer 整型整型 Boolean 布尔型布尔型 Long integer 长整型长整型 Floating point real number 浮点型浮点型 Complex number 复数型复数型 String 字符串字符串 List 列表列表 Tuple 元组元组 Dictionary 字典字典Python数据类型数据类型概述(续)概述(续) 其他的内建类型其他的内建类型 Type 类型类型 Null对象对象 文件文件 Set 集合集合 函数函数 模块模块 类类Python数据类型数据类型标准类型操作符标准类型操作符 对象值的比较对象值的比较 对象身份比较对象身份比较 x=y=3.3 x=3.3;y=3.3 x=3.3;y=2+1.3 x is y 布尔类型操作符布尔类型操作符Python数据类型数据类型标准类型内建函数标准类型内建函数 type() cmp() obj1obj2 返回正数返回正数 Obj1=obj2 返回返回0Python数据类型数据类型可变对象和不可变对象可变对象和不可变对象 不可变对象:对象创建之后,其值不能更新不可变对象:对象创建之后,其值不能更新 可变对象:对象创建之后,其值可以更新可变对象:对象创建之后,其值可以更新主要内容主要内容 python概述概述 python基础基础 python对象对象 条件和循环条件和循环 函数函数 模块模块 面向对象编程面向对象编程 文件相关文件相关 异常异常数字类型数字类型序列类型序列类型字符串字符串列表列表元组元组映射类型映射类型字典字典Python数据类型数据类型数字数字 整型:整型:32位机器上,标准整型的取值范围是位机器上,标准整型的取值范围是-231231-1 布尔型:只有两个值的整型布尔型:只有两个值的整型(0和和1),python2.3开开始支持布尔型始支持布尔型 长整型:标准整型的超级,能表达的数值仅与机长整型:标准整型的超级,能表达的数值仅与机器支持的内存大小有关系。器支持的内存大小有关系。23434333L 双精度浮点型:占双精度浮点型:占8个字节个字节(64位位),其中,其中53位表示位表示底,底,11位表示指数,一位表示符号。位表示指数,一位表示符号。-77.,2.3434433,9.78e-23,float(12) 复数:复数:a=4.56+8j; a.real表示实部,表示实部,a.imag表示表示虚部虚部数字类型的操作符数字类型的操作符 支持不同的数字支持不同的数字类型相加类型相加强制强制类型转换类型转换数字类型的操作符数字类型的操作符(续续)算数操作符算数操作符功能功能expr1*expr2幂运算幂运算+expr结果符号不变结果符号不变-expr对结果符号去负对结果符号去负expr1 * expr2表达式表达式1乘以表达式乘以表达式2expr1 / expr2表达式表达式1除以表达式除以表达式2(传统除或真正除)(传统除或真正除)expr1 / expr2表达式表达式1地板除以表达式地板除以表达式2(python2.2加入加入)expr1 % expr2表达式表达式1对表达式对表达式2取余(模除)取余(模除)expr1 + expr2加加expr1 - expr2减减数字类型的操作符数字类型的操作符(续续) 位操作符(只适用于整型)位操作符(只适用于整型)位操作符位操作符功能功能num单目运算,对数的每一位取反单目运算,对数的每一位取反num1 num2num1左移左移num2位位num1 & num2num1与与num2按位与按位与num1 num2num1异或异或num2num1 | num2num1与与num2按位或按位或数字类型的内建函数数字类型的内建函数 转换函数:将其他类型的数字转换为相应类型转换函数:将其他类型的数字转换为相应类型 int()、long()、float()、complex() bool() python2.2开始开始 功能函数:功能函数: abs(num) 绝对值绝对值 coerce(num1,num2) 将将num1和和num2转换为同一类转换为同一类型,然后以一个元组的形式返回型,然后以一个元组的形式返回 divmod(num1,num2) 获得商和余数的元组获得商和余数的元组 pow(num1,num2,mod=1) 指数运算指数运算 round(flt,ndig=1) 对浮点型进行四舍五入运算对浮点型进行四舍五入运算数字类型的相关模块数字类型的相关模块模块模块介绍介绍decimal十进制浮点运算类(十进制浮点运算类(Decimal)math/cmath标准标准C库数学运算函数。常规数学运算在库数学运算函数。常规数学运算在math模块,复数运算在模块,复数运算在cmath模块模块random多种位随机数生成器多种位随机数生成器主要内容主要内容 python概述概述 python基础基础 python对象对象 条件和循环条件和循环 函数函数 模块模块 面向对象编程面向对象编程 文件相关文件相关 异常异常数字类型数字类型序列类型序列类型字符串字符串列表列表元组元组映射类型映射类型字典字典序列类型序列类型字符串、列表、元组字符串、列表、元组 序列:成员有序排列,可以通过下标访问其成员序列:成员有序排列,可以通过下标访问其成员 字符串:字符串:hello “hello” hello 列表:列表:2,4,python 2.4, 6.8, python, 1, 3, “hello world” 元组元组:(3.3, 6, “computer”) (4, (“hello”, 9), 1.1, 5.7, 8) 序列有相同的访问方式:序列有相同的访问方式:序列类型的操作符序列类型的操作符 成员关系操作符:成员关系操作符:in, not in 连接操作符:连接操作符:+ 重复操作符:重复操作符:* 切片操作:切片操作: : : 0=index=len(sequence)-1序列类型的内建函数序列类型的内建函数 类型转换函数类型转换函数函数函数含义含义list(iter)把可迭代对象转换为列表把可迭代对象转换为列表str(obj)把把obj对象转换为字符串对象转换为字符串unicode(obj)把对象转换为把对象转换为unicode字符串字符串tuple(iter)把一个可迭代对象转换成元组把一个可迭代对象转换成元组序列类型的内建函数(续)序列类型的内建函数(续)函数名函数名功能功能enumerate(iter)接受一个可迭代对象为参数,返回一个接受一个可迭代对象为参数,返回一个enumerae对象,该对象生成由每个元素的对象,该对象生成由每个元素的index值和值和item值组成的元组值组成的元组len(seq)返回返回seq的长度的长度max(iter, key=nune)返回最大值返回最大值min(iter, key=none)返回最小值返回最小值reversed(seq)接受一个序列作为参数,返回一个以逆序访问的接受一个序列作为参数,返回一个以逆序访问的迭代器迭代器zip()接受接受n个序列类型对象参数,返回一个列表,该个序列类型对象参数,返回一个列表,该列表的每个元素都是一个元组,第一个元组是列表的每个元素都是一个元组,第一个元组是每个参数的第一个元素所组成的,以此类推每个参数的第一个元素所组成的,以此类推主要内容主要内容 python概述概述 python基础基础 python对象对象 条件和循环条件和循环 函数函数 模块模块 面向对象编程面向对象编程 文件相关文件相关 异常异常数字类型数字类型序列类型序列类型字符串字符串列表列表元组元组映射类型映射类型字典字典字符串类型字符串类型 字符串的创建和赋值字符串的创建和赋值 访问字符串访问字符串 改变字符串(字符串是不可变的)改变字符串(字符串是不可变的) 删除字符或字符串删除字符或字符串字符串类型的操作符字符串类型的操作符 序列类型通用的操作符序列类型通用的操作符 in, not in, +,等等 只适用于字符串的操作符只适用于字符串的操作符 格式化操作符格式化操作符 %格式化字符格式化字符转换方式转换方式%r优先用优先用repr()函数进行字符串转换()函数进行字符串转换%s优先用优先用str()函数进行字符串转换()函数进行字符串转换%d / %i转换成有符号十进制数转换成有符号十进制数%u转换成无符号十进制数转换成无符号十进制数%o转换成无符号八进制数转换成无符号八进制数%x / %X转换成无符号十六进制数(转换成无符号十六进制数(x/X代表转换后的大小写)代表转换后的大小写)%e / %E转换成科学计数法转换成科学计数法%f / %F转换成浮点数转换成浮点数%输出输出%字符串类型的内建函数字符串类型的内建函数 标准内建函数标准内建函数 cmp() 序列类型函数序列类型函数 len()、max()、min()、enumerate()、zip()、sorted() 字符串类型函数字符串类型函数 raw_input() 提示用户输入并将这个输入返回提示用户输入并将这个输入返回 str() 返回字符串返回字符串 unicode() 返回返回unicode字符串字符串 char() 用用0-255内的整型为参数,返回对应的字符内的整型为参数,返回对应的字符 unichr() 同同char() ,但返回的是,但返回的是unicode字符字符 ord() 以一个字符为参数,返回对应的以一个字符为参数,返回对应的ASCII数值或数值或unicode数值数值字符串类型的相关模块字符串类型的相关模块 string模块:字符串模块相关函数和工具模块:字符串模块相关函数和工具 re:正则表达式:正则表达式 struct:字符串和二进制之间的转换:字符串和二进制之间的转换 crypt:单方面加密:单方面加密 主要内容主要内容 python概述概述 python基础基础 python对象对象 条件和循环条件和循环 函数函数 模块模块 面向对象编程面向对象编程 文件相关文件相关 异常异常数字类型数字类型序列类型序列类型字符串字符串列表列表元组元组映射类型映射类型字典字典列表类型列表类型 创建列表并赋值创建列表并赋值 访问列表的元素及更新访问列表的元素及更新 删除列表中的元素或列表本身删除列表中的元素或列表本身列表类型操作符列表类型操作符 标准类型操作符标准类型操作符 序列类型操作符序列类型操作符 内建函数内建函数 cmp()、len()、max()、min()、reversed() sorted()、enumerate()、zip() sum() list()、tuple()列表类型内建函数列表类型内建函数 list.append(obj) 向列表中添加一个对象向列表中添加一个对象obj list.count(obj) 返回一个对象返回一个对象obj在列表中出现的次数在列表中出现的次数 list.extend(obj) 把序列把序列obj中的内容添加到列表中中的内容添加到列表中 list.index(obj,i=0,j=len(list) 返回返回listk list.insert(index,obj) 在在index位置插入对象位置插入对象obj list.pop(index=-1) 删除并返回指定位置的对象,默认是删除并返回指定位置的对象,默认是最后一个对象最后一个对象 list.remove(obj) 从列表中删除对象从列表中删除对象obj list.reversed() list.sort()列表类型的特性列表类型的特性 列表有容器和可变特性列表有容器和可变特性 堆栈堆栈后进先出后进先出 list.append() 向队列尾部添加向队列尾部添加 list.pop() 从队列尾部删除从队列尾部删除 队列队列先进先出先进先出 list.append() 向队列尾部添加向队列尾部添加 list.pop(0) 从队列头部删除从队列头部删除主要内容主要内容 python概述概述 python基础基础 python对象对象 条件和循环条件和循环 函数函数 模块模块 面向对象编程面向对象编程 文件相关文件相关 异常异常数字类型数字类型序列类型序列类型字符串字符串列表列表元组元组映射类型映射类型字典字典元组类型元组类型 与列表很相似,但元组是不可变的与列表很相似,但元组是不可变的 创建一个元组并赋值创建一个元组并赋值 访问元组中的值访问元组中的值 更新元组:对现有元组构造一个新的元组更新元组:对现有元组构造一个新的元组 移除元组:移除元组:del 元组的操作符和内建函数元组的操作符和内建函数元组的特性元组的特性 不可变性对元组的影响不可变性对元组的影响 元组中的可变对象依然可变元组中的可变对象依然可变 所有的多对象的、逗号分隔的、没有明确用符号所有的多对象的、逗号分隔的、没有明确用符号定义的,都默认为元组定义的,都默认为元组 单元素元组单元素元组 list()和和tuple() 元组和列表的相互转换元组和列表的相互转换序列类型小结序列类型小结 操作符操作符 in, not in, +, *, , :, : 内建函数内建函数 list, str, unicode, tuple, enumerate, len, max, min, reversed, zip, sorted raw_input, char, ord sum 模块模块 string, re主要内容主要内容 python概述概述 python基础基础 python对象对象 条件和循环条件和循环 函数函数 模块模块 面向对象编程面向对象编程 文件相关文件相关 异常异常数字类型数字类型序列类型序列类型字符串字符串列表列表元组元组映射类型映射类型字典字典映射类型映射类型字典字典 key1:value1, key2:value2, key3:value3, 创建字典和赋值创建字典和赋值 dict1= 创建一个空字典创建一个空字典 dict2=name:joe,age:30 dict()方法方法 访问字典中的值访问字典中的值 通过键访问相应的值通过键访问相应的值 dict2name 访问字典的键访问字典的键 dict2.keys(),返回一个列表,返回一个列表 访问字典的值访问字典的值 dict2.values(), 返回一个列表返回一个列表 遍历一个字典遍历一个字典 字典的键不能被改变字典的键不能被改变 删除字典元素和字典删除字典元素和字典 del dict2name del dict2字典类型的操作符字典类型的操作符 标准类型操作符标准类型操作符 映射类型操作符映射类型操作符 字典键查找操作符字典键查找操作符 (键键)成员关系操作符成员关系操作符 in, not in字典类型的内建函数字典类型的内建函数 type() str() 比较函数比较函数 cmp()字典类型的内建函数字典类型的内建函数 dict(container):创建字典的工厂函数。如果提创建字典的工厂函数。如果提供了容器类,就用其中的条目填充字典,否则创供了容器类,就用其中的条目填充字典,否则创建一个空字典建一个空字典 len(): 返回键值对的数目返回键值对的数目 hash(): 判断某个对象是否可以作为字典的键判断某个对象是否可以作为字典的键 不可变类型是可哈希的不可变类型是可哈希的字典类型的内建函数字典类型的内建函数(续续)方法名字方法名字操作操作dict.clear()删除字典中的所有元素删除字典中的所有元素dict.copy()返回一个字典的副本(浅拷贝)返回一个字典的副本(浅拷贝)dict.fromkeys(seq, val=None)创建并返回一个新的字典,以创建并返回一个新的字典,以seq中的元素为键,中的元素为键,val为值为值dict.get(key, d=none)返回键返回键key对应的值,若该键不存在,返回对应的值,若该键不存在,返回ddict.items()返回一个包含字典中键、值对元组的列表返回一个包含字典中键、值对元组的列表dict.iteritems()返回一个包含字典中键、值对元组的列表的迭代子返回一个包含字典中键、值对元组的列表的迭代子dict.iterkeys()返回键列表的迭代子返回键列表的迭代子dict.itervalues()返回值列表的迭代子返回值列表的迭代子dict.keys()返回字典中键的列表返回字典中键的列表dict.values()返回字典中值的列表返回字典中值的列表dict.pop(key,default)与与get相似,但是将键值对弹出相似,但是将键值对弹出dict.setdefault()与与类型,若键不存在,则使用默认值类型,若键不存在,则使用默认值dict.update(dict2)将将dict2的键值对添加到字典的键值对添加到字典dict暂时告一段落暂时告一段落 谢谢谢谢