Python基础学习五

Posted ljl233

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础学习五相关的知识,希望对你有一定的参考价值。

Python基础学习五

迭代


for x in 变量:


其中变量可以是字符串、列表、字典、集合。

当迭代字典时,通过字典的内置函数value()可以迭代出值;通过字典的内置函数items()可以迭代出键值对。


for key in dict: #迭代键

for val in dict.value(): #迭代值

for k,v in dict.items(): #迭代键值对


当迭代列表时,通过内置函数enumerate()可以迭代出索引加值。


for i in list #迭代列表

for i ,j in enumerate(list) #迭代索引-值对


切片

列表、元组、字符串可以通过索引来完成切片。下标索引从0开始,-1是末尾开始的位置。


list[-5] #末尾五个元素

list[1,5,2] #从第二个元素开始到第六个元素为止,以2为步长切片输出


列表生成

格式如下:


[x*x for x in range(5)]


生成器

为了减少对内存的占用,使用生成器来完成对列表的生成。

与列表生成的不同在,将中括号改为小括号:


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


通过其内置函数next()来完成对下一个元素的输出,从而减少了内存的占用。


for n in g:

? print (n)


关键字yield ,将输出变成为生成器。


杨辉三角

def t(n):
l=(1)
yield l
while n:
l=[1]+[l[n]+l[n+1] for n in range(len(l)-1)]+[1]
yield l


迭代器

凡是可作用于for循环的对象都是Iterable类型;凡是可作用于next()函数的对象都是Iterator类型。

集合数据类型如list、dict、str等是Iterable但不是Iterator,不过可以通过iter()函数获得一个Iterator对象。

以上是关于Python基础学习五的主要内容,如果未能解决你的问题,请参考以下文章

Python 第五阶段 学习记录之---Django 基础

零基础入门自学Python分为五个阶段

Python编程基础之(五)Scrapy爬虫框架

Python学习————python基础复习

python基础学习——网络编程

Python学习 - python基础