Python中的迭代和可迭代对象
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中的迭代和可迭代对象相关的知识,希望对你有一定的参考价值。
什么是迭代(iteration)呢?
给定一个list或者tuple,通过for循环来遍历这个list或者tuple、这种遍历就是迭代(iteration)。只要是可迭代的对象都可以进行迭代、怎么判断一个对象是否是可迭代的对象呢?可以用collections模块里面的iterable包的isinstance函数进行判断:
>>> from collections import Iterable#载入模块 >>> isinstance(‘abc‘,Iterable) #字符串是可迭代对象吗? True >>> isinstance([1,2,3],Iterable) #list是可迭代对象吗? True >>> isinstance({‘dede‘:123},Iterable) #字典是可迭代对象吗? True
对于字典的迭代:
>>> d={‘python‘:1,‘php‘:2,‘java‘:3} #默认迭代的是key >>> for i in d: print(i) python php java #自定义迭代key >>> for key in d.keys(): print(key) python php java #迭代value >>> for value in d.values(): print(value) 1 2 3 #同时迭代key,value >>> for k , v in d.items(): print(k,v) python 1 php 2 java 3 >>>
怎样实现对列表和元组的下标循环呢?
两种方法:
#对于一个列表 lanage=[‘python‘,‘php‘,‘java‘,‘c++‘] 第一种: for x in range(len(lanage)): print(x,lanage[x]) 第二种: for i ,value in enumerate(lanage): print(i,value) #运行结果 0 python 1 php 2 java 3 c++ 0 python 1 php 2 java 3 c++ >>> #在同一行输出: for i ,value in enumerate(lanage): print(i,value ,end=‘,‘) 结果: 0 python,1 php,2 java,3 c++,
以上是关于Python中的迭代和可迭代对象的主要内容,如果未能解决你的问题,请参考以下文章