文章源自:http://bluecrystal.iteye.com/blog/562480
python小例子之9 -- for语句的72变
主题:
for语句的72变
环境: winvista(64) + sp2 + python2.5
备注: 请注意,凡是在源代码文件中使用了中文字符,请最好保存为utf-8格式,以下所有的代码片段实际上前后关联的,最好保存为一个文件来使用
备注: 请注意,凡是在源代码文件中使用了中文字符,请最好保存为utf-8格式,以下所有的代码片段实际上前后关联的,最好保存为一个文件来使用
说明: python作为一种动态脚本语言,非常灵活,这篇文章对于常用for ... in ...语句做了个小结,如果你有新的有关for...in...语句的用法,欢迎与我交流,对于程序员来说,最好的方法就是代码。
代码1:
代码1:
# 遍历字典
var1 = {'key1':'abc', 'key2':23, 'key3':(23, 24)}
for k, v in var1.items():
print k, v
print '\r\n'
代码2:
# 遍历列表
var2 = [1, 2, 3]
for v in var2:
print v
代码3:
# 遍历元组
var3 = (1,2,3,4)
for v in var3:
print v
代码4:
# 遍历字符串的每个字符
var4 = 'string'
for c in var4:
print c
代码5:
# 对每个元素处理后生成新集合的写法
var5 = [v+1 for v in var3]
print var5
代码6:
# 把集合var2的每个元素的值依次叠加到集合var3的每个元素的值上
var6 = [v1+v2 for v1 in var2 for v2 in var3]
print var6
var7=[]
for v1 in var2:
for v2 in var3:
var7.append(v1+v2)
print var7
代码7:
var8 = [(2,3,3), (5,6,6), (4,5,5)]
for v1, v2, v3 in var8:
print v1, v2, v3
代码8:
var9 = (1, -2, 4, 5, -1)
var10 = [v for v in var9 if v > 0]
print var10