python for循环及常用函数
python for循环
格式:
for iterating_var in sequence:
statements(s)
########################################
可多层嵌套
for iterating_var in sequence:
for iterating_var in sequence:
statements(s)
for iterating_var in sequence:
...
statements(s)
for循环可以遍历任何序列的项目,如一个列表或者一个字符串
常用函数
enumerate()
函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
对于字典,返回key的下标(无序)和key本身的值.不常用
对于字典,返回key的下标和key本身的值
info = {'name':'lijiang', 'age':0, 'a':100}
print(info)
for key, valuel in enumerate(info):
print(key, valuel)
执行
C:\Python27\python.exe D:/Python/type-of-data.py
{'a': 100, 'age': 0, 'name': 'lijiang'}
(0, 'a')
(1, 'age')
(2, 'name')
Process finished with exit code 0
############################################################################
对于更序列(列表、元组或字符串),返回下标及下标对应的值,以字符串为例:
name = 'lijiang'
for key, valuel in enumerate(name):
print(key, valuel)
执行
C:\Python27\python.exe D:/Python/type-of-data.py
(0, 'l')
(1, 'i')
(2, 'j')
(3, 'i')
(4, 'a')
(5, 'n')
(6, 'g')
Process finished with exit code 0
iteritems()
迭代输出字典的键值对,类似于enumerate(),仅适用于字典
info = {'name':'lijiang', 'age':0, 'a':100}
for key, valuel in info.iteritems():
print(key, valuel)
执行:
C:\Python27\python.exe D:/Python/type-of-data.py
('a', 100)
('age', 0)
('name', 'lijiang')
Process finished with exit code 0
range() 和 xrange()
两个函数均为生在一个有序数列
range() 一次性生成一个列表
xrange() 每次生成一个xrange对象,只有当使用时才会生成
建议使用xrange(),执行效率高
print(range(10))
print(type(range(10)))
print(xrange(10))
print(type(xrange(10)))
执行
C:\Python27\python.exe D:/Python/type-of-data.py
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
<type 'list'>
xrange(10)
<type 'xrange'>
Process finished with exit code 0