什么是迭代(iteration)呢?
给定一个list或者tuple,通过for循环来遍历这个list或者tuple、这种遍历就是迭代(iteration)。只要是可迭代的对象都可以进行迭代、怎么判断一个对象是否是可迭代的对象呢?可以用collections模块里面的iterable包的isinstance函数进行判断:
1
2
3
4
5
6
7
|
>>> from collections import Iterable #载入模块
>>> isinstance ( 'abc' ,Iterable) #字符串是可迭代对象吗?
True
>>> isinstance ([ 1 , 2 , 3 ],Iterable) #list是可迭代对象吗?
True
>>> isinstance ({ 'dede' : 123 },Iterable) #字典是可迭代对象吗?
True
|
对于字典的迭代:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#默认迭代的是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)
2
#同时迭代key,value
>>> for k , v in d.items():
print (k,v)
python 1
php 2
java 3
>>>
|
怎样实现对列表和元组的下标循环呢?
两种方法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#对于一个列表
lanage = [ 'python' , 'php' , 'java' , 'c++' ]
第一种:
for x in range ( len (lanage)):
print (x,lanage[x])
第二种:
for i ,value in enumerate (lanage):
print (i,value)
#运行结果
python
php
java
c + +
python
php
java
c + +
>>>
#在同一行输出:
for i ,value in enumerate (lanage):
print (i,value ,end = ',' )
结果:
python, 1 php, 2 java, 3 c + + ,
|
总结
以上就是本文关于python中的迭代和可迭代对象代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
原文链接:https://www.cnblogs.com/engeng/articles/6841063.html