python 生成器推导式
生活随笔
收集整理的這篇文章主要介紹了
python 生成器推导式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
# 生成器 generator 用yield來返回數據
def reverse(data):for i in range(len(data) - 1, -1, -1): # range(start, end, step) 不包括endyield data[i]def test_generator():for char in reverse('abc'):print(char)# test_generator()
'''
c
b
a
'''
'''
生成器表達式:與列表推導表達式有異曲同工之妙,只是在內置函數里面推導的。
'''
def get_sum(var):if var < 0:var = 0s = sum(x * x for x in range(var + 1)) # 1-var的平方和print(s)return s # get_sum(3) 14def other_generator():x1 = [1, 2, 3]y1 = [4, 5, 6]z = zip(x1, y1) # list(z) [(1, 4), (2, 5), (3, 6)]print(sum(i * j for i, j in z))print(list(z), '\n')from math import pi, sin sin_table = {x: sin(x*pi/180) for x in range(0, 91)}print(sin_table)# other_generator()# set max list
# 在元組里面找到不重合的值
s = set(x for x in ('abacdfd'))
print(s)# 找到里面最大的值
max_val = max((x, y) for x in [9, 53, 3] for y in range(7))
print(max_val)data = 'abc'
L = list(data[i] for i in range(len(data) - 1, -1, -1))
print(L)'''
{'d', 'f', 'a', 'c', 'b'}
(53, 6)
['c', 'b', 'a']
'''
請看列表,字典推導式,數據結構。
總結
以上是生活随笔為你收集整理的python 生成器推导式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Vscode搭建jdk源码阅读环境 ws
- 下一篇: python怎么创建文件夹_如何使用py