Python

您所在的位置:网站首页 使用i从1到10步长为3,循环几次 Python

Python

2024-07-05 03:03| 来源: 网络整理| 查看: 265

在Python中,range()是一个内置函数,用于生成一个整数序列,通常用于循环遍历。以下是range()函数的一些常见用法:

range(n): 从0数到n. 不包含nrange(m, n): 从m数到n, 不包含nrange(m, n, s): 从m数到n, 不包含n, 每次的间隔是s

下面举例:

 

1. 默认情况

当你调用range()函数时,它会生成一个从0开始到给定数字(不包括该数字)的整数序列。

for i in range(5): print(i) # 输出: 0, 1, 2, 3, 4

2. 指定开始和结束

range()函数可以接受三个参数,分别表示起始点、终止点和步长。起始点默认为0,终止点是生成的数字的最大值(不包括该值),步长是每次递增的间隔。

for i in range(2, 5): print(i) # 输出: 2, 3, 4

3. 指定步长

还可以通过设置步长参数来改变生成的数字的间隔。例如,步长为2将使序列中的每个数字之间的间隔为2。

for i in range(0, 10, 2): print(i) # 输出: 0, 2, 4, 6, 8

4. 与列表结合使用

还可以将range()函数与list()函数结合使用来创建一个列表。例如,下面的代码将创建一个包含1到10(包括10)的整数的列表。

my_list = list(range(10)) # ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'] print(my_list)

5. 与其他内置函数结合使用

range()函数还可以与其他内置函数结合使用,例如map()和filter()。例如,下面的代码将使用range()函数和map()函数将列表中的每个元素乘以2。

my_list = [1, 2, 3, 4, 5] new_list = list(map(lambda x: x * 2, my_list)) # [2, 4, 6, 8, 10] print(new_list)

 

 

小练习:把列表内所有的姓张的人修改成姓王,其余不变

思考第1步:把列表内的所有元素取出来

lst = ['赵敏', '张绍刚', '张无忌', '武则天', '嬴政', '马超'] for item in lst:#用for循环取出所有的元素内容 print (item) #顺序打印所有lst[]里的内容 #输出结果为: 赵敏 张绍刚 张无忌 武则天 嬴政 马超

 

思考第2步:把所有以“张”开头的元素,替换为以“王”开头的元素

for item in lst:#用for循环取出所有的元素内容 if item.startswith("张"):#判断是否以"张"开头 new_name ="王"+item[1:]#元素的组合方法用+号,配合从第1号位到最后。 print(new_name) #输出结果为: 王绍刚 王无忌

*此时,我们看不到元素的索引位置

 

思考第3步:如何把新得到的名字丟回列表

for循环想要计数. 必须借助于range()

之前for循环的写法for item in lst:  , 我们看不到元素的索引位置,因此我们需要如下写法for i in range(len(lst))=for i in range(0,len(lst))两种写法都是从0到列表长度的最后一位

两种打印列表的操作方法对比

lst = ['赵敏', '张绍刚', '张无忌', '武则天', '嬴政', '马超'] # 使用for item in lst for item in lst:#循环的是元素 print(item) # 使用for i in range(len(lst)) for i in range(len(lst)):#循环的是索引 print(lst[i])

其实他们的输出结果是一样的,但是一个循环的是元素本身,一个循环的是索引位置,把该位置的元素打印出来。print(lst[0])、print(lst[1])、print(lst[2])一直到print(lst[i])

思考第4步:安装位置替换原列表

lst = ['赵敏', '张绍刚', '张无忌', '武则天', '嬴政', '马超'] for i in range(len(lst)): # len(lst)列表的长度 -> 可以直接拿到列表索引的for循环 item = lst[i] # item依然是列表中的每一项 if item.startswith("张"): # 例如:张绍刚 new_name = "王"+item[1:] # 例如:王绍刚 # 把符合判定的新名字丢回原先列表位置 lst[i] = new_name # 修改列表 print(lst)

这里再讲解一下思路:for i in range(len(lst))这个由range(0,6)演变而来的

在列表lst = ['赵敏', '张绍刚', '张无忌', '武则天', '嬴政', '马超']中,一共存在6个列表元素(0号、1号、2号、3号、4号、5号),需要表示为range(0,6)=range(6),为了方便操作,列表最好要用len(lst)自动数出来。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3