




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 李凯 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数的定义 微实例微实例:生日歌。生日歌。 过生日时要为朋友唱生日歌,歌词为: Happy birthday to you! Happy birthday to you! Happy birthday, dear Happy birthday to you! 编写程序为Mike和Lily输出生日歌。最简单的实现方法是重 复使用print
2、()语句 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数的基本使函数的基本使 用用 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数的定义 函数是一段具有特定功能的、可重用的语句组,用函数名来 表示并通过函数名进行完成功能调用。 函数也可以看作是一段具有名字的子程序,可以在需要的地 方调用执行,不需要在每个执行地方重复编写这些语句。 每次使用函数可以提供不同的参数作为输入,以实现对不同 数据的处理;函数执行后,还可以反馈相应的
3、处理结果。 函数是一种功能抽象 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数的定义 Python定义一个函数使用def保留字,语法形式如下: def (): 注释 return 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数的定义 1 2 3 4 print(Happy birthday to you!) print(Happy birthday to you!) print(Happy birthday, dear Mi
4、ke!) print(Happy birthday to you!) 最简单的实现方法是重复使用print()语句,如下: 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数的定义 微实例5.1m5.1HappyBirthday.py 1 2 3 4 5 6 7 8 9 10 def happy(): print(Happy birthday to you!) def happyB(name): happy() happy() print(Happy birthday, dear !.format(name) h
5、appy() happyB(Mike) print() happyB(Lily) Happy birthday to you! Happy birthday to you! Happy birthday, dear Mike! Happy birthday to you! Happy birthday to you! Happy birthday to you! Happy birthday, dear Lily! Happy birthday to you! 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数调
6、用的过程 程序调用一个函数需要执行以下四个步骤: (1)调用程序在调用处暂停执行; (2)在调用时将实参复制给函数的形参; (3)执行函数体语句; (4)函数调用结束给出返回值,程序回到调用前的暂 停处继续执行。 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数调用的过程 微实例5.1中happyB()的被调用过程 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数调用的过函数调用的过 程程 轨道交通企业日常运输组织的指挥中枢,担
7、负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数调用的过函数调用的过 程程 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 lambda函数 Python的有33个保留字,其中一个是lambda,该保留字用于定义 一种特殊的函数匿名函数,又称lambda函数。 匿名函数并非没有名字,而是将函数名作为函数结果返回,如下: = lambda : lambda函数与正常函数一样,等价于下面形式: def (): return 轨道交通企业日常运输组织的指挥中枢,担负着组织行车
8、、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 lambda函数 简单说,lambda函数用于定义简单的、能够在一行内 表示的函数,实例如下。 f = lambda x, y : x + y type(f) f(10, 12) 22 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数的参数传函数的参数传 递递 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 可选参数和可变数量参数 在定义函数时,有些参数可
9、以存在默认值。 必须出现在函数参数列表的最右端,且任何一 个默认值参数右边不能有非默认值参数。 def dup(str, times = 2): print(str*times) dup(knock) knockknock dup(knock,4) knockknockknockknock 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 可选参数和可变数量参数 在函数定义时,可以设计可变数量参数,通过参数前增加 星号(*)实现 def vfunc(a, *b): print(type(b) for n in b:
10、a += n return a vfunc(1,2,3,4,5) 15 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 参数的位置和名称传递 Python提供了按照形参名称输入实参的方式,调用如下: result = func(x2=4, y2=5, z2=6, x1=1, y1=2, z1=3) 由于调用函数时指定了参数名称,所以参数之间的顺序可 以任意调整。 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 变量的返回值 return
11、语句用来退出函数并将程序返回到函数被调用的位 置继续执行。 return语句同时可以将0个、1个或多个函数运算完的结果 返回给函数被调用处的变量,例如。 def func(a, b): return a*b s = func(knock, 2) print(s) knockknock 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 变量的返回值 函数可以没有return,此时函数并不返回值,如微实例 5.1的happy()函数。函数也可以用return返回多个值,多 个值以元组类型保存,例如。 def func(a
12、, b): return b,a s = func(knock, 2) print(s, type(s) (2, knock) 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 Python内置函数(BIF) Python解释器提供了68个内置函数,其中大部分会经常用到 abs()id()round()compile()locals() all()input()set()dir()map() any()int()sorted()exec()memoryview() asci()len()str()enumerate(
13、)next() bin()list()tuple()filter()object() bool()max()type()format()property() chr()min()zip()frozenset()repr() complex()oct()getattr()setattr() dict()open()globals()slice() divmod()ord()bytes()hasattr()staticmethod() eval()pow()delattr()help()sum() float()print()bytearray()isinstance()super() hash(
14、)range()callable()issubclass()vars() hex()reversed()classmethod()iter() import() 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 内置函数不需要导入任何模块即可使用 执行下面的命令可以列出所有内置函数 dir(_builtins_) Python标准库 input() print() str() range() 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运
15、行图的重要责任 函数函数功能简要说明功能简要说明 abs(x)返回数字x的绝对值或复数x的模 all(iterable)如果对于可迭代对象中所有元素x都等价于True,也就是对于 所有元素x都有bool(x)等于True,则返回True。对于空的可 迭代对象也返回True any(iterable)只要可迭代对象iterable中存在元素x使得bool(x)为True, 则返回True。对于空的可迭代对象,返回False ascii(obj)把对象转换为ASCII码表示形式,必要的时候使用转义字符来 表示特定的字符 bin(x)把整数x转换为二进制串表示形式 bool(x)返回与x等价的布尔值
16、True或False bytes(x)生成字节串,或把指定对象x转换为字节串表示形式 callable(obj)测试对象obj是否可调用。类和函数是可调用的,包含 _call_()方法的类的对象也是可调用的 compile()用于把Python代码编译成可被exec()或eval()函数执行的代 码对象 complex(real, imag)返回复数 chr(x)返回Unicode编码为x的字符 常用内置函数 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数函数功能简要说明功能简要说明 delattr(obj,
17、 name)删除属性,等价于del dir(obj)返回指定对象或模块obj的成员列表,如果不带参数则 返回当前作用域内所有标识符 divmod(x, y)返回包含整商和余数的元组(x-x%y)/y, x%y) enumerate(iterable, start) 返回包含元素形式为(0, iterable0), (1, iterable1), (2, iterable2), .的迭代器对象 eval(s, globals, locals) 计算并返回字符串s中表达式的值 exec(x)执行代码或代码对象x exit()退出当前解释器环境 filter(func, seq)返
18、回filter对象,其中包含序列seq中使得单参数函数 func返回值为True的那些元素,如果函数func为None 则返回包含seq中等价于True的元素的filter对象 float(x)把整数或字符串x转换为浮点数并返回 frozenset(x)创建不可变的字典对象 getattr(obj, name, default)获取对象中指定属性的值,等价于,如果不 存在指定属性则返回default的值,如果要访问的属性 不存在并且没有指定default则抛出异常 续表1常用内置函数 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运
19、输计划、实现列车运行图的重要责任 函数函数功能简要说明功能简要说明 globals()返回包含当前作用域内全局变量及其值的字典 hasattr(obj, name)测试对象obj是否具有名为name的成员 hash(x)返回对象x的哈希值,如果x不可哈希则抛出异常 help(obj)返回对象obj的帮助信息 hex(x)把整数x转换为十六进制串 id(obj)返回对象obj的标识(内存地址) input(提示)显示提示,接收键盘输入的内容,返回字符串 int(x, d)返回实数(float)、分数(Fraction)或高精度实数 (Decimal)x的整数部分,或把d进制的字符串x转换为十 进
20、制并返回,d默认为十进制 isinstance(obj, class- or-type-or-tuple) 测试对象obj是否属于指定类型(如果有多个类型的话需要 放到元组中)的实例 iter(.)返回指定对象的可迭代对象 len(obj)返回对象obj包含的元素个数,适用于列表、元组、集合、 字典、字符串以及range对象和其他可迭代对象 续表2常用内置函数 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数函数功能简要说明功能简要说明 list(x)、set(x)、 tuple(x)、dict(x) 把对象x
21、转换为列表、集合、元组或字典并返回,或生成 空列表、空集合、空元组、空字典 locals()返回包含当前作用域内局部变量及其值的字典 map(func, *iterables)返回包含若干函数值的map对象,函数func的参数分别来 自于iterables指定的每个迭代对象, max(x)、 min(x)返回可迭代对象x中的最大值、最小值,要求x中的所有元 素之间可比较大小,允许指定排序规则和x为空时返回的 默认值 next(iterator, default) 返回可迭代对象x中的下一个元素,允许指定迭代结束之 后继续迭代时返回的默认值 oct(x)把整数x转换为八进制串 open(name
22、, mode)以指定模式mode打开文件name并返回文件对象 ord(x)返回1个字符x的Unicode编码 pow(x, y, z=None)返回x的y次方,等价于x * y或(x * y) % z 续表3常用内置函数 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数函数功能简要说明功能简要说明 print(value, ., sep= , end=n, file = sys. stdout, flush=False) 基本输出函数 quit()退出当前解释器环境 range(start, end , st
23、ep ) 返回range对象,其中包含左闭右开区间start,end)内以 step为步长的整数 reduce(func, sequence, initial) 将双参数的函数func以迭代的方式从左到右依次应用至序 列seq中每个元素,最终返回单个值作为结果。在Python 2.x中该函数为内置函数,在Python 3.x中需要从 functools中导入reduce函数再使用 repr(obj)返回对象obj的规范化字符串表示形式,对于大多数对象有 eval(repr(obj)=obj reversed(seq)返回seq(可以是列表、元组、字符串、range以及其他可 迭代对象)中所有元
24、素逆序后的迭代器对象 续表4常用内置函数 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 函数函数功能简要说明功能简要说明 round(x , 小数位数)对x进行四舍五入,若不指定小数位数,则返回整数 sorted(iterable, key=None, reverse=False) 返回排序后的列表,其中iterable表示要排序的序列或迭 代对象,key用来指定排序规则或依据,reverse用来指定 升序或降序。该函数不改变iterable内任何元素的顺序 str(obj)把对象obj直接转换为字符串 sum(
25、x, start=0)返回序列x中所有元素之和,要求序列x中所有元素必须为 数字,允许指定起始值start,返回start+sum(x) type(obj)返回对象obj的类型 zip(seq1 , seq2 .) 返回zip对象,其中元素为(seq1i, seq2i, .)形式 的元组,最终结果中包含的元素个数取决于所有参数序列 或可迭代对象中最短的那个 续表5常用内置函数 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 dir()函数可以查看指定模块中包含的所有成员或者指定 对象类型所支持的操作。
26、 help()函数则返回指定模块或函数的说明文档。 import time dir(time) help(time) 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 ord()和chr()是一对功能相反的函数,ord()用来返回单个字符的序数或 Unicode码,chr()用来返回某序数对应的字符 str()则直接将其任意类型参数转换为字符串。 ord(a) 97 chr(65) A chr(ord(A)+1) B str(1) 1 str(1234) 1234 str(1,2,3) 1, 2, 3
27、str(1,2,3) (1, 2, 3) str(1,2,3) set(1, 2, 3) 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 max()、min()、sum()这三个内置函数分别用于计算列表、元组或其他可 迭代对象中所有元素最大值、最小值以及所有元素之和,sum()要求元素 支持加法运算,max()和min()则要求序列或可迭代对象中的元素之间可 比较大小。 import random a = random.randint(1,100) for i in range(10) #列表推导式
28、a 72, 26, 80, 65, 34, 86, 19, 74, 52, 40 print(max(a), min(a), sum(a) 86 19 548 如果需要计算该列表中的所有元素的平均值,可以直接这样用: sum(a)*1.0/len(a) #Python 2.7.12 54.8 sum(a)/len(a) #Python 3.5.2 54.8 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 内置函数max()和min()的key参数可以用来指定比较规则 x = 21, 1234, 9 m
29、ax(x) 9 max(x, key=len) 1234 max(x, key=int) 1234 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 内置函数type()和isinstance()可以判断数据类型。 type(3) #查看3的类型 type(3) in (list, tuple, dict) #判断3是否为list,tuple或dict类型的实 例 False isinstance(3, int) #判断3是否为int类型的实例 True isinstance(3j, (int, flo
30、at, complex) #判断3是否为int,float或complex类 型 True 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 range()是非常常用的内置函数,语法格式为range(start, end , step )。 该函数返回具有惰性求值特点的range对象,其中包含左闭右开区间 start,end)内以step为步长的整数。参数start默认为0,step默认为1。 range(5) #start默认为0,step默认为1 range(0, 5) list(_) 0, 1,
31、2, 3, 4 list(range(1, 10, 2) #指定起始值和步长 1, 3, 5, 7, 9 list(range(9, 0, -2) #步长为负数时,start应比end大 9, 7, 5, 3, 1 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 sorted()对列表、元组、字典、集合或其他可迭代对象进行排序并 返回新列表,reversed()对可迭代对象(生成器对象和具有惰性求 值特性的zip、map、filter、enumerate等类似对象除外)进行翻转 (首尾交换)并返回可迭
32、代的reversed对象。 x = aaaa, bc, d, b, ba sorted(x, key=lambda item: (len(item), item) #先按长度排序,长度一样的正常 排序 b, d, ba, bc, aaaa reversed(x) #逆序,返回reversed对象 list(reversed(x) #reversed对象是可迭代的 5, 1, 9, 3, 8, 7, 10, 6, 0, 4, 2 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 内置函数map()把一个函
33、数func依次映射到序列或迭代器对象的每个元素 上,并返回一个可迭代的map对象作为结果,map对象中每个元素是原序 列中元素经过函数func处理后的结果。 list(map(str, range(5) #把列表中元素转换为字符串 0, 1, 2, 3, 4 def add5(v): #单参数函数 return v+5 list(map(add5, range(10) #把单参数函数映射到一个序列的所有元 素 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 def add(x, y): #可以接收2个参数的函数 return x+y list(map(add, range(
34、5), range(5,10) #把双参数函数映射到两个序列 上 5, 7, 9, 11, 13 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 eval()函数是一个十分重要的函 数,它能够以 Python表达式的方式解析并执行字符串,将返回结果输 出 exec()函数用来执行指定的Python源代码或者由 compile()编译的代码对象 x = 1 eval(x + 1) 2 eval(1.1 + 2.2) 3.3 eval(“_import_(os).startfile(rc:windows
35、notepad.exe) exec(help(sum) #查看内置函数查看内置函数sum的帮助文档的帮助文档 轨道交通企业日常运输组织的指挥中枢,担负着组织行车、提高运营服务质量、确保运输安全、完成乘客运输计划、实现列车运行图的重要责任 常用内置函数 enumerate()函数用来枚举可迭代对象中的元素,返回可迭代的enumerate 对象,其中每个元素都是包含索引和值的元组。 list(enumerate(abcd) #枚举字符串中的元素 (0, a), (1, b), (2, c), (3, d) list(enumerate(Python, Greate) #枚举列表中的元素 (0, Python), (1, Greate) list
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物流服务对客户满意度的影响试题及答案
- 采购管理中的 SWOT 分析技巧试题及答案
- 人类演化的重要证据试题及答案
- 高校科技创新团队支持计划实施办法
- 2024年CPMM奇葩试题与答案解析
- 2024年CPSM考试综合练习试题及答案
- 现代物流与供需关系分析试题及答案
- 快速掌握CPMM试题及答案
- 江苏盐城市时杨中学2025届高三第一次模拟考试化学试卷含解析
- 2025届安徽省合肥市区属中学高考仿真模拟化学试卷含解析
- 环境经济学课件:第十次课 环境污染与效率费效分析等
- 高处安全作业票填写模板(2022更新)
- 小学生幼儿园文明礼仪教育主题班会(可爱卡通版)
- 新道路货物运输企业质量信誉考核档案
- 国际收付清算体系与实务从原理看SWIFT
- 广东海事局辖区主要防台锚地或泊区情况表
- 风险与机遇识别评价表
- PPAP培训资料
- 盖梁支架施工方案(三立柱穿钢棒法)
- 简易注销全体投资人承诺书
- 甲烷氯化物的流程资料
评论
0/150
提交评论