【建站服务】高端!网站定制/设计/优化/二次开发/制作/搭建-泸州高端网站建设-域名申请
作者: 风兰 . 阅读量: 6 . 发表时间:2022-09-21 05:35:38
上往建站提供服务器空间服务商,百度快照排名,网站托管,百度推广运营,致力于设计外包服务与源代码定制开发,360推广,搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。
高端!网站定制/设计/优化/二次开发/制作/搭建-泸州高端网站建设

Python3 函数
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。
定义一个函数
你可以定义一个由自己想要功能的函数,以下是简单的规则:
函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。
任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
函数内容以冒号 : 起始,并且缩进。
return [表达式] 结束函数,选择性地返回一个值给调用方,不带表达式的 return 相当于返回 None。
语法
Python 定义函数使用 def 关键字,一般格式如下:
def 函数名(参数列表):
函数体
默认情况下,参数值和参数名称是按函数声明中定义的顺序匹配起来的。
实例
让我们使用函数来输出"Hello World!":
#!/usr/bin/python3
def hello() :
print("Hello World!")
hello()
更复杂点的应用,函数中带上参数变量:
实例(Python 3.0+)
比较两个数,并返回较大的数:
#!/usr/bin/python3
def max(a, b):
if a > b:
return a
else:
return b
a = 4
b = 5
print(max(a, b))
以上实例输出结果:
5
实例(Python 3.0+)
计算面积函数:
#!/usr/bin/python3
# 计算面积函数
def area(width, height):
return width * height
def print_welcome(name):
print("Welcome", name)
print_welcome("Runoob")
w = 4
h = 5
print("width =", w, " height =", h, " area =", area(w, h))
以上实例输出结果:
Welcome Runoob
width = 4 height = 5 area = 20
函数调用
定义一个函数:给了函数一个名称,指定了函数里包含
高端!网站定制/设计/优化/二次开发/制作/搭建-泸州高端网站建设
上往建站提供搭建网站,域名注册,官网备案服务,网店详情页设计,企业网店,专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管,网页美工排版,致力于域名申请,竞价托管,软文推广,全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机,网站推广,百度竞价托管,网站建设,上网建站推广服务,网络公司有哪些等业务,专业团队服务,效果好。
服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)
关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站



wuguandong
963***591@qq.com
闫伟超
yif***chaoran@163.com
如教程所说,迭代器和生成器算是 Python 一大特色,其核心是基于迭代器协议来的。
而平时我们经常使用的 for in 循环体,本质就是迭代器协议的一大应用。
同时 Python 内置的集合类型(字符、列表、元组、字典)都已经实现了迭代器协议,所以才能使用 for in 语句进行迭代遍历。for in 循环体在遇到 StopIteration 异常时,便终止迭代和遍历。
再说下可迭代、迭代器、生成器三个概念的联系和区别。
1、可迭代概念范围最大,生成器和迭代器肯定都可迭代,但可迭代不一定都是迭代器和生成器,比如上面说到的内置集合类数据类型。可以认为,在 Python 中,只要有集合特性的,都可迭代。
2、迭代器,迭代器特点是,均可以使用 for in 和 next 逐一遍历。
3、生成器,生成器一定是迭代器,也一定可迭代。
至于 Python 中为何要引入迭代器和生成器,除了节省内存空间外,也可以显著提升代码运行速度。
自定义迭代器类示例和说明如下:
以上为自定义迭代器类的机制。
下面再示例说明下,如何自定义生成器函数,因为大多数实战场景中,使用生成器函数可能会更多一些:
调用以上函数时,会返回一个生成器对象,然后对该生成器对象,使用 next() 逐一返回:
其实核心的概念还是记忆上次迭代的位置,类中直接使用 __next__ 魔法方法实现,函数中使用 yield 实现。且怀疑,类中的 __next__ 魔法方法底层也是使用 yield 来实现的。
迭代器和生成器具体应用场景,就凡是需要提升运行效率或节约内存资源,且遍历的数据是集合形式的,都可以考虑。
另外一个小众的使用场景,是变相实现协程的效果,即在同一个线程内,实现不同任务交替执行
def mytask1(): print('task1 开始执行') ''' task code ''' yielddef mytask2(): print('task2 开始执行') ''' task code ''' yieldgene1=mytask1()gene2=mytask2()for i in range(100): next(gene1) next(gene2)闫伟超
yif***chaoran@163.com