python迭代算法含义_python学习笔记-迭代

python中我们可以对list、tuple、dict或者其他可迭代的对象进行迭代从而遍历取出各个元素。

如何判断一个对象是不是一个可迭代对象

判断一个对象是不是可迭代对象可以使用isinstance判断是否是collections模块的Iterable类型。

例如:

from collections import Iterable

isinstance('hello world',Iterable) # True

isinstance([1,2,3,4],Iterable) #True

isinstance(231,Iterable) #False

List tuple string 循环

fruits = ['apple','banana','peal','water melon']

for fruit in fruits:

print fruit

迭代的时候,在获取的值的同时,又想获取到下标,该怎么做?

我们可以利用python中内置函数enumerate()函数将list、tuple、string等组装成一个带索引的enumerate object。

for index,fruit in enumerate(fruits):

print index,fruit

Dict 迭代

Dict字典本身带有key和value。

利用for...in...迭代的时候,默认是key迭代。

d = {'banana':20,'apple':30,'peal':40}

for key in d:

print key

输出结果将是:

banana

apple

peal

那么该如果让它是value迭代呢?

我们可以使用字典自身的itervalues函数。

for value in d.itervalues():

print value

在迭代的时候我们既想要key又想要value,该怎么办?

for key,value in d.iteritems():

print key,value

说明

在python3.x版本中,itervalues(),iterkeys(),iteritems()函数都被新的函数取代。需要了解的可以阅读http://www.jb51.net/article/6…了解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值