Python基础灬函数补充(作用域,迭代器,生成器)
变量作用域
函数里面操作外部变量时,作用域仅限于函数里面。
var1 = 123
def func():var1 = 456print("函数里:", var1)
func()
print("函数外:", var1)
# 函数里: 456
# 函数外: 123
操作函数外变量
var1 = 123
def func():global var1 # 将其声明为全局var1 = 456print("函数里:", var1)
func()
print("函数外:", var1)
# 函数里: 456
# 函数外: 456
迭代器
# 迭代器
string = "start" # list,str,tuple都是可迭代对象Iterable
it = iter(string) # 通过iter(Iterable)转化为一个迭代器
while True:try:print(next(it)) # 迭代器通过next(Iterator)获取下一个元素,直到取完元素报StopIteration异常except StopIteration as e:break
生成器
关键字field实现range函数小数步长
range(int,int,int) # range函数只能实现生成一组序列,但是步长只能时整数
普通函数带有yield
关键字,变成一个generator
,且每次调用时,遇到yield
程序返回,再次执行从上次返回的地方开始。
def frange(start, stop, offset):x = startwhile x < stop:# print(x)yield xx += offsetprint(type(frange(10,13,0.5)))
# <class 'generator'>for i in frange(10, 13, 0.5):print(i)
# 10
# 10.5
# 11.0
# 11.5
# 12.0
# 12.5
转载于:https://www.cnblogs.com/july-3rd/p/10703977.html
Python基础灬函数补充(作用域,迭代器,生成器)相关推荐
- Python 3 学习——函数扩展and迭代器生成器装饰器
Python 学习的第九小节 写此博客 是为了激励自己,并且将自己的心得以及遇到的问题与人分享 一.学习笔记 1. 高阶函数 函数名可以作为函数参数输入 .可以进行赋值.还可以作为返回值. 2.作用域 ...
- python基础(7)-函数命名空间作用域闭包
函数 动态参数 *args 1 def sum(*args): 2 ''' 3 任何参数都会被args以元组的方式接收 4 ''' 5 print(type(args)) # result:<c ...
- Python基础灬函数(定义,参数)
函数 函数定义 # 定义一个计算绝对值的函数 def cal_abs(x):if x >= 0:return xelse:return -x# 调用函数 print('-1的绝对值是:%s' % ...
- Python基础与拾遗9:Python中的函数与作用域
Python基础与拾遗9:Python中的函数与作用域 函数的作用 函数的设计理念 Python中的函数 Python中的函数关键字 Python中的多态 Python中函数的参数传递 Python中 ...
- Python基础之函数
详情请戳 python基础之函数介绍及使用 python基础之内置函数 python基础之迭代器和生成器 python基础之装饰器 转载于:https://www.cnblogs.com/zhangl ...
- Python基础(八)--迭代,生成器,装饰器与元类
目录 Python基础(八)--迭代,生成器,装饰器与元类 1 迭代 1.1 可迭代对象与迭代器 1.2 自定义迭代类型 1.3 迭代合体 2 生成器 2.1 什么是生成器 2.2 生成器表达式 2. ...
- python的用途实例-Python基础之函数原理与应用实例详解
本文实例讲述了Python基础之函数原理与应用.分享给大家供大家参考,具体如下: 目标 函数的快速体验 函数的基本使用 函数的参数 函数的返回值 函数的嵌套调用 在模块中定义函数 01. 函数的快速体 ...
- Python数据结构与算法(1.5)——Python基础之函数与异常
Python数据结构与算法(1.5)--Python基础之函数与异常 0. 学习目标 1. 函数 1.1 自定义函数 1.2 函数与参数 1.3 函数与返回值 2. 异常处理 2.1 raise 语句 ...
- python基础二 函数 递归 装饰器 迭代器 生成器 内置函数 二分法应用
函数 迭代器 生成器 拆包和装包 tup=("j1","a1","c1","k1") a,b,c,d=tup print ...
- else列表推导式 if python_python3基础09列表推导式|迭代器|生成器|匿名函数
"pythonic生物人"的第46篇分享. python3匿名函数.推导式.迭代器和生成器用法. 目录 1.匿名函数(lambda)2.推导式(comprehensions) 列表 ...
最新文章
- EBS R12.2 ADOP (R12.2 AD Online Patching) - 1
- jquery实现点击改变背景色,点击其他恢复原来背景色,被点击的改变背景色
- ZooKeeper管理员指南——部署与管理ZooKeeper
- java+卡有型号吗,第一次写java代码,就卡主了,真是惨,有木有大腿来帮忙调试一下...
- android sdk eclipse没导入,Android—新的eclipse导入SDK出错解决办法
- Android入门:封装一个HTTP请求的辅助类
- 图像椒盐噪声和高斯噪声
- 量化分析师的python日记_量化分析师的Python日记【第1天:谁来给我讲讲Python?】...
- 算法知识点——(3)监督学习——决策树
- 分享一个去水印接口,完全免费,早点下手啊
- tamami来解答国内防辐射服为什么越卖越火
- .net编程的十大技巧 转载之Jeffery.Sun
- akka typed mysql_akka-typed(8) - CQRS读写分离模式
- App地推营销成为趋势,破局增长数据赋能是关键
- Vue上传文件 iview Upload UI 组件上传组件
- android 视频插件下载,轻视频动态壁纸插件
- Kibana:Kibana 入门 (二)
- 学海无涯!java连接mysql
- signature=1e627a907c86a2ecea855afa2fce9a87,熟练掌握 openssl 证书命令说明
- ListView的BeginUpdate()和EndUpdate()作用