python学习第七天

python学习第七天,第1张

文章为学习廖雪峰老师的python教程笔记,为记录个人学习历程,不喜勿喷!

1、列表生成式:

>>> [x * x for x in range(1, 11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

把要生成的元素x * x放到前面,后面跟for循环,就可以把list创建出来

二层循环:

[m + n for m in 'ABC' for n in 'XYZ']
['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']

把字符串变小写:lower( )

>>> L = ['Hello', 'World', 'IBM', 'Apple']
>>> [s.lower() for s in L]
['hello', 'world', 'ibm', 'apple']

if....else

[元素 for 元素 in ... if条件判断]

在一个列表生成式中,for前面的if ... else是表达式,而for后面的if是过滤条件,不能带else

for 前if..else必须完整,for后可以只有if

2、生成器

创建generator:

a、  一个列表生成式的[]改成(),就创建了一个generator

eg:

g = (x * x for x in range(10))

打印generator的元素,用next()函数获得generator的下一个返回值,一个next()返回一个值

一般用for循环迭代它

⭐a ,b =b , a+b   相当于 t =(b,a+b)  a=t[0]  b=t[1]  注意与 a=b b=a+b 区分

关键字yield   普通函数是顺序执行,遇到return语句或者最后一行函数语句就返回。而变成generator的函数,在每次调用next()的时候执行,遇到yield语句返回,再次执行时从上次返回的yield语句处继续执行

毕业实习第四天,学得还是很少。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/788837.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-05
下一篇2022-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存