1 python的for循环格式及嵌套

liftword4个月前 (01-13)技术文章39

python的for循环是一个序列迭代器,可以遍历任何可迭代对象,比如字符串、列表、元组等。

1.1 python的for循环格式

python的for循环,会逐个将可迭代对象中的元素,赋值给for循环的变量。

python的for循环格式如下,其中,break,continue,else都是可选部分:

for 变量 in 可迭代对象:
    循环语句
    if 分支条件1:
        break
    if 分支条件2:
        continue
else:
    未执行break,循环结束后执行

1.2 python简单的for循环

python简单的for循环,没有break、continue、else部分。

示例

>>> S='梯阅线条'
>>> for c in S:
    print(c,end=' ')

    
梯 阅 线 条 
>>> sum=0
>>> for x in range(1,100):
    sum+=x

    
>>> sum
4950

1.3 python的多变量for循环

python的for循环可以使用多个变量来遍历迭代对象。也可以用于序列解包。

示例

>>> T=[(1,2),(3,4),(5,6)]
>>> for (a,b) in T:
    print(a,b,end=',')

    
1 2,3 4,5 6,
# for 循环序列解包
>>> L=[tuple(range(i,i+4)) for i in range(1,13,4)]
>>> L
[(1, 2, 3, 4), (5, 6, 7, 8), (9, 10, 11, 12)]
>>> for (a,b,*c) in L:
    print(a,b,c)

    
1 2 [3, 4]
5 6 [7, 8]
9 10 [11, 12]

1.4 python的for循环遍历字典

python的for循环,遍历字典可以通过for k in D遍历键,或者通过for k,v in D.items()遍历键值对。

示例

# in D 遍历 key
>>> D={'name':'梯阅线条','no':9555,'url':'tyxt'}
>>> for k in D:
    print(k,'=',D[k])

    
name = 梯阅线条
no = 9555
url = tyxt
>>> list(D.items())
[('name', '梯阅线条'), ('no', 9555), ('url', 'tyxt')]
# D.items() 遍历 key和value
>>> for k,v in D.items():
    print(k,'=',v)

    
name = 梯阅线条
no = 9555
url = tyxt

1.5 python的嵌套for循环

1.5.1 break和else

在列表中查找是否存在指定的多个元素,可以用到break和else,以及嵌套for循环。

示例

>>> L1=['梯阅线条',9555,'tyxt','软件测试开发']
>>> L1=['梯阅线条',(9555,9556),'tyxt','软件测试开发']
>>> L2=['hi',(9555,9556)]
>>> for x in L2:
    for y in L1:
        if x == y:
            print('{}在{}里面'.format(x,L1))
            break
    else:
        print('{}不在{}里面'.format(x,L1))

        
hi不在['梯阅线条', (9555, 9556), 'tyxt', '软件测试开发']里面
(9555, 9556)在['梯阅线条', (9555, 9556), 'tyxt', '软件测试开发']里面

用成员关系in替换嵌套和break及else

示例

>>> L1
['梯阅线条', (9555, 9556), 'tyxt', '软件测试开发']
>>> L2
['hi', (9555, 9556)]
>>> for x in L2:
    if x in L1:
        print('{}在{}里面'.format(x,L1))
    else:
        print('{}不在{}里面'.format(x,L1))

        
hi不在['梯阅线条', (9555, 9556), 'tyxt', '软件测试开发']里面
(9555, 9556)在['梯阅线条', (9555, 9556), 'tyxt', '软件测试开发']里面

1.6 python的for循环查找相同字符

python的for循环结合成员关系in,可以查找两个序列中相同元素,比如查找两个字符串中相同的字符。

示例

>>> S1='梯阅线条'
>>> S2='提月线条'
>>> L=[]
>>> for x in S1:
    if x in S2:
        L.append(x)

        
>>> L
['线', '条']

版权声明?

本文首发微信公众号:梯阅线条

原创不易,转载请注明出处。

更多内容参考python知识分享或软件测试开发目录。

相关文章

python碰撞检测与鼠标/键盘的输入

碰撞检测与鼠标/键盘的输入本章的主要内容:● 碰撞检测;● 当遍历一个列表时切勿对其进行修改;● Pygame 中的键盘输入;● Pygame 中的鼠标输入。碰撞检测负责计算屏幕上的两个物体何时彼此接...

python 字典插入新的健值对的方法

在 Python 中,可以使用下标运算符([])或 update() 方法向字典中插入新的键值对。使用下标运算符插入键值对的语法如下所示:my_dict = {'apple': 1,...

python基础——字典详解

一、简述字典是一种可变容器模型,可以存储任意类型的对象。字典使用键值对格式,每个键值之间用":"分割,整个字典包括在一对{}中;键必须是惟一的,值不需要唯一,值可以是任何数据类型;字典...

Python教程-更改字典键和值

作为软件开发者,我们总是努力编写干净、简洁、高效的代码。Python 字典是该语言中最通用的数据结构之一,允许你以键值格式存储和访问数据。然而,你可能需要在你的程序中的某个时刻修改字典的键或值。在这篇...

那些让人直呼卧槽的Python代码

作者:闲欢来源:Python 技术Python 是一个设计优美的解释型高级语言, 它提供了很多能让程序员感到舒适的功能特性。但有的时候, Python 的一些输出结果对于初学者来说似乎并不是那么一目了...

python计数器(Counter)

python计数器(Counter)Counter是collections模块的Counter类。collections中一共有9种容器,其中counter、defaultdict、deque、nam...