python中for循环的用法,python for 遍历
Python有两个循环语句:while loop和for loop。正如上一章详细描述的,本节介绍了常用于遍历序列类型(如字符串、列表、元组、字典和集合)的for循环,以逐个检索序列中的每个元素。
for循环的语法格式如下:
in string list tuple dictionary set的迭代变量:
码组
在中,手动为循环中的迭代变量赋值并不常见,因为迭代变量用于存储从序列变量中读取的元素;块是多行代码,缩进格式相同,和while一样。代码块也称为循环体,因为它与循环结构一起使用。
for循环语句的执行流程如图1所示。
图1执行for循环语句的流程图
例如:
name=hpdz
#变量名,逐字符输出
对于ch in name:
是打印(ch)
执行结果如下。
张
三
在用for循环遍历“hpdz”字符串的过程中,我们可以看到迭代变量ch被赋值为“张”和“三”,并赋给整个循环。然而,示例的循环体非常简单,只有一行输出代码。
对于数值循环
使用for循环时,APP最基本的位置是执行数值循环。例如,要实现1到100之间的累加,请运行以下代码:
打印的结果(计算1) 2…100是))
#保存累积结果的变量
结果=0
从# 1到100逐个取值并相加。
forIinrange(101):
结果=i
是打印(结果)
执行结果如下。
2.100的计算结果:
5050
上面的代码使用Python内置的range(函数)来生成一系列连续的整数。在许多情况下,它用在for循环中。
Range))该函数的语法格式如下:
范围(开始、结束、步骤))。
该功能各参数的含义如下:
开始:指定计数的开始值。如果未省略,默认值从0开始。
End:指定计数的结束值。不包括该值。不能省略此参数。
步长:指定步长,即两个量之间的间隔。如果省略,默认步长为1。
在word,range))函数中,如果只有一个参数,指定的是end;如果有两个参数,则指定start和end。
你也可以根据自己的需要写代码来测试。
例如:
打印(输出10以内的所有奇数:)
foriinrange (1,10,2):
print(I,end= )
执行结果如下。
输出10:
1 3 5 7 9
Python 2.x提供了一个xrange))函数(range(除了function,range))。但是在Python 3.x中,我们把xrange()改成了range())函数,删除了旧的xrange())函数。
遍历列表和元组
使用“for循环”遍历列表和元组时,列表或元组包含多个元素,“for循环”循环体会被执行多次。每个元素执行一次后,迭代变量将依次赋给元素的值。
下面的代码使用for循环遍历元组。
a_tuple=(crazyit , fkit , Charlie )
对于元组中的ele:
Print((当前元素为:,ele))))))))。
执行结果如下。
当前元素是:crazyit
当前元素是:fkit
当前元素是查理。
当然也可以用上面的方法遍历列表。例如,以下过程计算列表中所有数字元素的总和及平均值。
src _ list=[ 12,45,3.4,13, a ,4,56, crazyit ,109.5]
my_sum=0
我的计数=0
对于src_list中的ele:
#如果元素是整数或浮点数
If instance (ele,int) ifisinstance(ele,float):
是,打印(ele)
#积累这个元素
my_sum=ele
#数字元素的数量加1
我的计数=1
Print (sum:),my_sum())))))。
Print(平均值:),my_sum/my_count)。
执行结果如下。
12
45
3.4
13
四
五十六岁
109.5
总计:242.9
平均值:34.7
上面的程序使用for循环遍历列表的元素,判断几何元素:只有当列表元素是数值(int,float)时,程序才会累加,这样就可以计算出列表中数值元素的和。
而且程序中还使用了Python的isinstance()函数,用来判断一个变量是否是指定类型的实例,其中前一个参数是要判断的变量,后一个参数是类型。我们可以在Python的交互解释器中测试函数,比如下面的运行过程:
isinstance(2,int)
真实的
isinstance(a ,int)
错误的
isinstance(a ,str)
真实的
从上面的运行过程可以看出,使用isinstance()函数来判断一个变量是否属于指定的类型是非常方便有效的。
如果需要,for循环还可以根据索引遍历列表或元组,即只要迭代变量取0到列表长度的区间,就可以通过迭代变量访问列表元素。例如,下面的程序:
a_list=[330,1.4,50, fkit ,-3.5]
#遍历从0到len(a_list)的范围
对于范围内的I(0,len(a_list)):
#按索引访问列表元素
Print(该%d元素是%s% (i,a_list[i]))
运行结果是:
第0个元素是330。
第一个元素是1.4。
第二个元素是50。
第三个元素是fkit。
第四个元素是-3.5。
循环遍历字典
使用for循环遍历字典,实际上是通过遍历公共列表来实现的。正如在字典的介绍中提到的,字典包含以下三种方法:
Items():返回字典中所有键值对的列表。
Keys():返回字典中所有键的列表。
Values():返回字典中所有值的列表。
因此,如果要遍历字典,可以调用字典的上述三种方法之一,得到字典的所有键-值对、所有键和所有值,然后进行遍历。下面的程序演示了如何使用for循环来遍历字典:
My_dict={ 中文:89,数学:92,英语:80}
#通过items()方法遍历所有键值对
#因为items方法返回的列表元素是键值对,所以应该声明两个变量。
对于key,my_dict.items()中的值:
打印(键:,键)
打印(值:,值)
打印(-)
#通过keys()方法遍历所有键
对于my_dict.keys()中的key:
打印(键:,键)
#通过密钥获取价值
打印(值:,my _ dict[键])
打印(-)
#通过values()方法遍历所有值
对于my_dict.values()中的值:
打印(值:,值)
运行结果是:
关键词:中文
价值:89
重点:数学
价值:92
关键词:英语
价值:80
-
关键词:中文
价值:89
重点:数学
价值:92
关键词:英语
价值:80
-
价值:89
价值:92
价值:80
上面的程序通过三个for循环分别遍历字典的所有键-值对、所有键和所有值。尤其是当所有的键值对都要遍历字典的items()时,因为items()方法返回的是字典中所有键值对的列表,列表元素是长度为2的元组,所以程序要声明两个变量分别表示key和value(这也是序列解包的应用)。
如果你需要实现一个程序来计算列表中每个元素出现的次数。由于我们不知道列表中包含了多少元素,所以考虑定义一个字典,将列表的元素作为键,将元素的出现次数作为值。该过程如下:
src_list=[12,45,3.4,12, fkit ,45,3.4, fkit ,45,3.4]
统计数据={}
对于src_list中的ele:
#如果字典包含由ele表示的关键字
如果ele在统计中:
#将ele元素表示的出现次数增加1
统计[ele]=1
#如果字典中不包含ele表示的键,说明这个元素还没有出现。
否则:
#将ele元素表示的出现次数设置为1
统计[ele]=1
#遍历dict并打印出每个元素出现的次数。
对于ele,在statistics.items()中计数:
print( % s 的出现次数是:%d% (ele,count))
运行结果是:
12的出现次数是:2
45的出现次数是:3
3.4的出现次数是:3
fkit的出现次数是:2
Python循环-用于循环合成的小案例
首先,字符串的倒置
#翻转角色――我是个好人!我爱我家“反”爱我家!我这么大了。"
巨源=我是个好人!“我爱我的家”
结果=
#第一步,先打开单词
对于巨源的x:
#将遍历结果添加到空字符串中。
结果=x结果
打印(结果)
第二,打印1到100之间的偶数。
#打印1到100之间的偶数
#先创建一个1―100的集合,用range函数生成一个半开半闭区间,所以最后得到1。
num=范围(1,101)
对于n in num:
如果n % 2==0:
打印(n)
否则:
打印(以上数字为1-100以内的偶数)
因为以上偶数需要包含100,范围(1,101)。
好了,这篇关于python for loop的文章就介绍到这里,这也是目前为止对脚本之家边肖比较完整的介绍。希望能帮到大家。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。