python 循环结构(for

发布时间:2024-12-09 15:47

学习Python入门:了解基础语法和数据结构 #生活技巧# #工作学习技巧# #编程语言学习路径#

最新推荐文章于 2024-10-26 14:13:56 发布

Chaojun_Shi 于 2018-08-12 15:20:38 发布

转自:https://www.cnblogs.com/kiki5881/p/8541887.html 循环结构(for-in)

说明:也是循环结构的一种,经常用于遍历字符串、列表,元组,字典等

格式:

for x in y: 循环体

执行流程:x依次表示y中的一个元素,遍历完所有元素循环结束

示例1:遍历字符串

s = 'I love you more than i can say' for i in s:    print(i)

示例2:遍历列表

l = ['鹅鹅鹅', '曲项向天歌', '锄禾日当午', '春种一粒粟'] ​ for i in l:    print(i) ​ # 可以获取下表,enumerate每次循环可以得到下表及元素 for i, v in enumerate(l):    print(i, v)

示例3:遍历字典

d = {'a':'apple', 'b':'banana', 'c':'car', 'd': 'desk'} ​ for key in d:    # 遍历字典时遍历的是键    print(key, d.get(key)) ​ # for key, value in d.items(): # 上下两种方式等价 d.items() <=> dict.items(d) for key, value in dict.items(d):    print(key, value)

列表生成式

可迭代对象:列表、元组、字典等都是可迭代对象,就是可以遍历的对象

range,用法如下:

print(range(10)) # 可以生成从0开始到10的连续整数的迭代对象 print(range(0, 10)) ​ # 可以遍历 for i in range(10):    print(i) ​ # 强制转换为列表 print(list(range(1, 11)))

列表生成式:快速生成具有特定规律的列表

# 列表生成式 print([i for i in range(1, 11)]) print([i*2 for i in range(1, 11)]) print([i*i for i in range(1, 11)]) print([str(i) for i in range(1, 11)]) print([i for i in range(1, 11) if i % 2 == 0])

多重循环:就是循环中嵌套循环

示例1:从终端输入一个整数,打印如下图形:

n = int(input('请输入一个整数:')) ​ ''' 1 1 2 1 2 3 1 2 3 4 ... 1 2 3 4 ... n ''' ​ ''' j = 1 while j <= n:   i = 1   while i <= j:       print(i, end=' ')       i += 1   print()   j += 1 ''' ​ for i in range(1, n+1):    for j in range(1, i+1):        print(j, end=' ')    print()

示例2:打印九九乘法表

for i in range(1, 10):    for j in range(1, i+1):        print('{}x{}={}'.format(j, i, j*i), end=' ')    print()

示例3:列表排序(选择法)

l = [1, 9, 4, 2, 0, 8, 3, 7] ​ # 获取长度 n = len(l) ​ # 外层循环用来控制循环的圈数,每一圈可以确定一个元素的位置 # 确定n个元素起始只需要n-1圈即可 for i in range(n-1):    # 内层循环用来比较大小交换元素,一圈确定一个元素    for j in range(i+1, n):        # 如果不合适        if l[i] > l[j]:            # 交换两个变量            l[i], l[j] = l[j], l[i] ​ print(l)

练习:

使用冒泡法排序列表

1.冒泡:每次比较相邻的两个元素,不合适就交换,依次向后,一圈下来可以确定一个元素 2.需要使用双重循环,外层循环控制循环的圈数, 内层控制一圈怎么交换

遍历列表,打印:我叫xxx,今年yyy岁,我来自zzz,数据如下

lt = [

  {'name':'小王', 'age':18, 'info':[('phone', '123'), ('dizhi', '广州')]},   {'name':'小芳', 'age':19, 'info':[('phone', '789'), ('dizhi', '深圳')]},   {'name':'小杜', 'age':22, 'info':[('phone', '567'), ('dizhi', '北京')]},   {'name':'小孟', 'age':28, 'info':[('phone', '000'), ('dizhi', '上海')]},   {'name':'小乔', 'age':26, 'info':[('phone', '111'), ('dizhi', '河南')]}, ]

从终端输入两个整数m,n,打印m*n的表格,如:2,5,打印如下效果

1 2 3 4 5 6 7 8 9 10

网址:python 循环结构(for https://www.yuejiaxmz.com/news/view/425074

相关内容

Python 循环讲解/从while到for循环(以求解S=1+2+3+……+n为例)
matlab中for循环的简单使用
Matlab的for循环优化
对循环神经网络(RNN)中time step的理解
使用Python构建虚拟个人助手教程
python中的print()语句中的end=''是什么意思
8个 Python 加速运行优化技巧
【Python报错已解决】TypeError: unsupported operand type (s) for +: ‘int‘ and‘str‘
matlab 中for循环的使用
【python 让繁琐工作自动化】第5章 字典和结构化数据

随便看看