Fork me on GitHub

python 如何在一个for循环中遍历两个列表

是我在看《笨方法学python》过程中发现有一行代码看不懂——“ for sentence in snippet, phrase:”,所以研究了半天,感觉挺有收获的。所以就放在博客上分享给大家了。

直入主题:

为了不耽误大家时间,如果知道以下为两段代码为什么输出不一样的话我觉得您肯定知道我下面要说的是什么了,您就不必花时间再读下去了。

1和2两段代码的区别是print在for循环中,另外一个是不在循环中。输出的结果却截然不同,如果想要弄懂如何遍历两列表,花些时间把下面的几行代码弄懂。我要说的您看起来就会十分简单了。

1.

# for循环两个列表的过程
list1 = ['1', '1']
list2 = ['A','B']

for x in list1, list2:
    reslut = x[:]
    print reslut    # type=list

2.

# for循环两个列表的过程
list1 = ['1', '1']
list2 = ['A','B']

for x in list1, list2:
    reslut = x[:]
print reslut    # type=list

输出的结果分别为

1.

['1', '1']
['A', 'B']

2.

['A', 'B']

 

好了,您看到这里,我就默认您不会嫌弃我罗嗦了。首先我是个写博客的新手,真是连句通顺能顺畅表达我意思的话,我都要思索再三才能写出来,让我写一篇篇幅足够站住园子首页的文章。我真是捉襟见肘啊,但是我开博客就是为了锻炼自己的文字表达能力的,就算是一点一滴的积累终归有一天我会成长的。不积跬步无以至千里!

扯得有些远了,下面说说python中如何在一个for循环中遍历两个列表

#coding:utf-8
#################
# for循环两个列表的过程
list1 = ['1', '1']
list2 = ['A','B']

for x in list1, list2:
    reslut = x[:]
    print reslut    # type=list

print "---------"

print list1, list2

print "#############"
# 简单版
dir = {'A': 'a',
       'B': 'b'}
       
xq = dir.keys()
yw = dir.values()

# 这段代码是遍历两个列表之后赋值给新的两个列表
for i in xq, yw:
    answer, question = i[:]    # 这里可以加代码对元素操作之后再赋值给新的列表
    print answer, ",", question  # 你可以把这句放在for循环外面在看下结果

print "---------"
# 复杂版
for j in xq:
    answer_ = j[:]
    print answer_, ",",
    
print "\n"

for k in yw:
    question_ = k[:]
    print question_, ",",
    

运行结果如下:

['1', '1']
['A', 'B']
---------
['1', '1'] ['A', 'B']
#############
A , B
a , b
---------
A , B , 

a , b ,

我贴完代码都不知道要说些什么了,我只能说多动手勤思考,如果一次没想明白的话,不要放弃,过两天再来看看。没准你就豁然开朗了。

以上为我的拙见,本人才疏学浅如有错误欢迎指正。

 

posted @ 2015-05-25 22:11  削微寒  阅读(51515)  评论(1编辑  收藏  举报