Python for循环可以遍历任何序列的项目,如列表、字符串、元组、字典、集合等序列类型。

语法:

for循环的语法格式如下:

for iterating_var in sequence:statements(s)

流程图:

animals="dog","cat","pig""bird"
for animal in animals:print(animal)#for循环中,print需要缩进

运行结果:

dog
cat
pig
bird

可以看到,使用 for 循环的过程中,迭代变量会先后被赋值,并代入循环体中使用。

Python for循环的具体应用

for 循环进行数值循环

在使用 for 循环时,最基本的应用就是进行数值循环。

比如说,想要实现从 1 到 100 的累加,可以执行如下代码:

print("计算 1+2+...+100 的结果为:")#保存累加结果的变量
result = 0 #逐个获取从 1 到 100 这些值,并做累加操作
for i in range(101):result += i
print(result)

运行结果为:

计算 1+2+...+100 的结果为:
5050

上面代码中,使用了 range() 函数,此函数是 Python 内置函数,用于生成一系列连续整数,多用于 for 循环中。

for循环遍历列表和元组

当用 for 循环遍历 list 列表或者 tuple 元组时,其迭代变量会先后被赋值为列表或元组中的每个元素并执行一次循环体。

下面程序使用 for 循环对列表进行了遍历:

my_list = [1,2,3,4,5]
for ele in my_list:print('ele =', ele)

程序执行结果为:

ele = 1
ele = 2
ele = 3
ele = 4
ele = 5

在Python中,for循环迭代元组与序列差不多,下面程序使用 for 循环对元组进行了遍历:

my_tuple = tuple("23333")
print(my_tuple)
#<<< ('2', '3', '3', '3', '3')
for value in my_tuple:print(value)

程序执行结果如下:

3
2
3
3
3

注意:因为对于字符型的集合,输出集合中的元素的时候,不会保存顺序,所以集合中元素的顺序通常是没有定义的,与序列相同for word in words中的word标识符也是可以随意更改。

for 循环遍历字典

在使用 for 循环遍历字典时,经常会用到和字典相关的 3 个方法,即 items()、keys() 以及 values(),如果使用 for 循环直接遍历字典,则迭代变量会被先后赋值为每个键值对中的键。

my_dic = {'python':"1",'shell':"2",'java':"3"}
for ele in my_dic:print('ele =', ele)

程序执行结果为:

ele = python
ele = shell
ele = java

直接遍历字典,和遍历字典 keys() 方法的返回值是相同的。

循环迭代键:

d = {'x':1,'y':2,'z':3}for key in d.keys():print(key)

除此之外,我们还可以遍历字典 values()、items() 方法的返回值。例如:

循环迭代值:

d = {'x':1,'y':2,'z':3}for value in d.values():print(value)
my_dic = {'python':"1",'shell':"2",'java':"3"}
for ele in my_dic.items():print('ele =', ele)

d.items方法还可以将键-值对作为元组放回,for循环的一大好处就是可以在循环中使用序列解包

程序执行结果为:

ele = ('python', '1')
ele = ('shell', '2')
ele = ('java', '3')

元组,列表,字典之间的转换

元组转换为列表

fruits = ('apple','banana','orange')#元组转换为列表:
list(fruit)#元组不能直接转换为字典,附:
#元组转换为字符串:
fruits.__str__()

列表转换为元组

fruit_list = ['apple','banana','orange']#列表转换为元组:
tuple(fruit_list)#列表不能直接转换为字典,附:
#列表转换为字符串:
str(fruit_list)

字典转换为元组

可以使用函数 tuple() 和 list() 将字典转换为元组和列表,但要注意的是,这里的转换后和之前的元素顺序是不同的,因为字典类似于散列,列表 类似于链表,元组类似于列表只是元素无法改变,所以,要把散列转换为链表而顺序不变是不可行的。但可以借助于有序字典OrderedDict,有序字典是字典的子类,它可以记住元素添加的顺序,从而得到有序的字典。有序字典这里就不深入探讨,给出普通字典的例子参考,代码如下:

fruit_dict = {'apple':1, 'banana':2, 'orange':3}#将字典的key转换为元组:
tuple(fruit_dict)
#将字典的value转换为元组:
tuple(fruit_dict.value())#将字典的key转换为列表:
list(fruit_dict)
#将字典的value转换为列表:
list(fruit_dict.value())#附:
#将字典转换为字符串:
str(fruit_dict)

字符串转换为元组

要将字符串转换为指定的数据结构,那么字符串就必须符合指定数据结构的格式,并借助于 eval() 函数

#将字符串转换为元组:
str = "(1,2,3)"
tuple(eval(str))
#将字符串转换为列表:
str = "(1,2,3)"
list(eval(str))
#将字符串转换为字典:
str = "{'a':1 ,'b',2}"
eval(str)

python 元组遍历_Python中的for循环:元组、列表、字典的遍历和相互转化相关推荐

  1. python list合并_python中如何合并两个列表

    python合并列表的方法如下: 方法一 最原始,最笨的方法,分别从两个列表中取出所有的元素,再放入新列表中就OK了.示例代码如下:list1 = [1,2,3] list2 = [4,5,6] li ...

  2. python中列表字典和字符串的相互转化

    python中列表字典和字符串的相互转化有两种方法: (1)使用str和eval的方法,一个简单的例子如下: data = {'name' : 'ACME','shares' : 100,'price ...

  3. python中字典的循环遍历_python中字典如何遍历循环

    python中字典如何遍历循环 发布时间:2020-09-24 14:16:07 来源:亿速云 阅读:64 作者:Leah 这篇文章将为大家详细讲解有关python中字典如何遍历循环,文章内容质量较高 ...

  4. python嵌套列表怎么遍历_Python中遍历列表,循环嵌套

    1.遍历列表中的元素:用for(操作元素)和while(操作索引)实现 #将列表中的所有元素打印出来 #for循环主要结合成员运算符使用,此时只能操作元素 list1= ["and" ...

  5. python的for循环语句怎么写_python中的for循环语句怎么写

    python中的for循环语句怎么写? Python for 循环语句 Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串. for循环的语法格式如下:for iterating ...

  6. python item方法_Python中使用item()方法遍历字典的例子

    Python字典的遍历方法有好几种,其中一种是for...in,这个我就不说明,在Python了几乎随处都可见for...in.下面说的这种遍历方式是item()方法. item() item()方法 ...

  7. python的数组和元组区别_python中数组,列表,元组的区别、定义、功能

    准确的来说,在python中是没有数组类型的,python中取而代之的是列表和元组.列表比元组好用,因为元组一旦定义就没法修改.而列表不仅可以和数组一样按索引访问,还有一堆的功能. 列表: (1)添加 ...

  8. python可以使用二维元组吗_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)...

    怎么去读取一个没有表头的二维csv文件(如下图所示)? 并以元组的形式表现数据: ((1.0, 0.0, 3.0, 180.0), (2.0, 0.0, 2.0, 180.0), (3.0, 0.0, ...

  9. python从多层循环嵌套中退出_python中退出多层循环的方法

    1.定义标记变量:利用变量值的变化退出循环 # 第一种嵌套形式 a = [[1, 2, 3], [5, 5, 6], [7, 8, 9]] # init_i = 0 # init_j = 0 flag ...

最新文章

  1. 数据结构源码笔记(C语言):线性表的顺序表示
  2. Promise第三篇:async和await关键字
  3. 原型模式——创建型模式
  4. 卖萌屋福利场:《机器阅读理解》免费送送送!
  5. jquery li ul 伪分页_求教关于Jquery的ul li的分页,该怎么处理
  6. highcharts 显示平均值数值_拼多多评价多久能显示,有什么出评价技巧吗?
  7. 对USB驱动程序的理解(1)
  8. shadow阴影属性
  9. 如何快速转载CSDN博客(详细)
  10. plex android tv版,PLEX,目前最佳的IPTV直播软件,没有之一
  11. CodeSmith注册
  12. 设计师经常逛的色彩搭配网站—配色方案吧
  13. 计算机系统类型怎么改变,更改文件类型_win7电脑系统文件类型怎么更改?
  14. 在 Windows 下关闭135/139/445端口的图文方法
  15. 【bpmn.js 使用总结】九、 Viewer 添加缩放、改色、拖动
  16. Mac PS 之 简单去除背景并设置背景透明,变更图片宽高。。。
  17. 三星手机刷机后显示无服务器,三星刷机后丢失基带别担心,轻松几步解决问题...
  18. UE4 靠近物体时显示文字,远离时文字消失
  19. 解读支持向量机SVM
  20. 远程服务器返回错误: (500) 内部服务器错误错误处理

热门文章

  1. 11.m进制转十进制
  2. MDI窗体简单方法(调用,闪屏)
  3. SQLServer学习笔记系列4
  4. Easyui笔记:jquery执行append后input的验证失效解决方案
  5. Android studio 导入module方法
  6. docker安装postgres
  7. 用户画像标签维度_一文看懂用户画像标签体系(包括维度、应用场景)
  8. Thymeleaf视图
  9. css3动画animation,transition
  10. 继承(继承父类,super)