python 10 迭代器和三元运算符】的更多相关文章

一.迭代器 1.迭代器协议:对象必须提供一种next方法,执行该方法要么返回迭代中的下一项,要么引起一个stopIteration异常,终止迭代 2.可迭代对象:实现了迭代器协议的对象 3.python 的内部工具(for,sum,min,max函数),使用迭代器协议访问对象 二 for循环机制 for循环本质:循环所有对象,全部使用迭代器协议 注意1:字典,字符串,列表,元组,集合,文件对象,都不是可迭代对象,for循环时,调用了他们的_iter_方法,将他们转换为可迭代对象 for循环工作:…
python学习10—迭代器.三元表达式与生成器 1. 迭代器协议 定义:对象必须提供一个next方法,执行该方法或者返回迭代中的下一项,或者返回一个StopIteration异常,以终止迭代(只能往后走不能往前退) 2. 可迭代对象 实现了迭代器协议的对象,对象内部定义一个__iter__()方法 3. for循环实现机制 字符串.列表,元组,字典,集合,文件等都不具有next方法,所以他们都不是可迭代对象(iterable object),但是为什么for循环可以进行呢? 原因:for循环首…
三元运算符 # 生成器:包含yield关键字的函数就是生成器 def my_generator(): yield 1 yield 2 yield 3 g_obj = my_generator() # my_generator()并不会执行函数体,得到的返回值就是生成器对象 # 生成器对象就是迭代器对象 r1 = g_obj. for v in g_obj: print(v) # 2 | 3 推导式 # 列表推导式:[v for v in iterable] dic = {'a': 1, 'b':…
常用三元运算符来简化分支和循环的代码: 分支简化: a = 1b = 2c = a if a > 1 else bprint(c) # 以上几行等同于 a = 1b = 2if a >1: c = aelse: c = bprint(c) 循环简化: nums = list(range(1,11))s = [i for i in nums if i % 2 == 0]print(s) # 以上代码等同于 s = []nums = list(range(1,11))for i in nums:…
1.迭代器 str=['sds','ccc','dw'] lit_1=str.__iter__()#获取迭代器 print(lit_1.__next__())#打印下一个值 # 用while做for的事情 while True: try: print(lit_1.__next__()) except StopIteration: break 2.三元表达式 name='dn' name=' 3.列表解析 li=[] for i in range(10): li.append(i) print(l…
 三元运算符 语法: 条件?成立做的事情:不成立做的事情:<=>相当于简单的if/else判断(简化写法) var num = 12; if(num>10){ num ++; }else { num--; } => 相当于三元运算符: num > 10? num++ : num--; 特殊情况: //=>如果三元运算符中某一部分成立不需要任何的处理我们用null/underfined/void 0...占位即可 var num=12; num>10?num++ :…
一.三元运算符 本质是if--else--的语法糖 前提:简化if--else--的结构,且两个分支有且只有一条语句 案例: a = 20 b = 30 res = a if a > b else b # 求最大值 print(res) res = a if a < b else b # 求最小值 print(res) 三元运算符的结果不一定要与条件有直接性关系 res = 'b为小值' if a > b else 'a为小值' print(res) name = input("…
python基础 我们要开始学习新的编程语言了,加油~~ python是“世界上最好的语言”,学习它当然是认为它是最好的所以我们才学(人生苦短我学python),python运用于不同的领域,采集分析:当下大数据时代的大数据分析:爬取网站的信息的爬虫:最近最火的行业人工智能:自己diy的嵌入式开发:包括还有python的后台开发 python是解释型语言,语言分为编译型语言和解释型语言,编译型语言是将代码编译成二进制文件,之后运行,解释型语言是直接运行,在运行时进行编译,这两种各有千秋 pyth…
在上一篇文章中,我们介绍了 Python 之禅. Python 编程规范和函数参数,现在我们介绍 Python 的元组拆包.三元运算符和对 Python 的 else 语句深入讲解.查看上一篇文章请点击:https://www.cnblogs.com/dustman/p/10052453.html 元组拆包元组拆包允许你将可迭代中 (大多数是元祖) 的每个项分配给一个变量. nums = (1,2,3) a,b,c = nums print(a) print(b) print(c) 运行结果:…
在c.php里面,都有三元运算符,如:   a = b?c:d 意思是 b 的运算结果如果是True,那么整个表达式a就等于c,反之如果b的运算结果是False,那么a就等于d. 这样写起来简洁又高效,否则就得写个一if else块,起码3 4 行. 但是python一开始却没有三元运算符,后来由于广大程序猿们的渴求,吉多在python2.5加入了这样一个语法表示: a=b if c else d 表示:如果c的值是True,那么a就等于b,否则如果c的值是False,那么a就等于d…