Python_实用入门篇_10
python中的for循环
1.for循环语句
1.python for循环可以遍历任何序列类型,如一个列表或者一个字符串。如下代码应该能理解,依次输出序列元素。
name = ["cdx", "red", "molly"] for i in name: print (i) >>>"cdx" "red" "molly"
2.for else语句(就是在循环结束后,执行else的内容)
name = ["cdx", "red", "molly"] for i in name: print (i) else: print ("hahaha") >>>"cdx", "red", "molly" "hahaha"
3.for循环中的break语句与countinue语句(条件达成时,遇到break直接跳出循环体,遇到countinue再返回执行循环)
#break语句
name = ["cdx"] for i in name: if i == "cdx": print("redmolly") break print("这句还执行吗?") else: print("没有循环数据!") print("完成循环!") >>>redmolly 完成循环!
#countinue语句
for i in "cdx":
if i == c:
countinue
print(i)
>>>"dx"
2.经常与for循环搭配起来使用的强大方便的range函数!
1.range函数:
range函数会自动生成数列,举个例子,range(1,5,2)就表示生成1,3的数列。其中1,5表示生成1,2,3,4的数列,为什么不是1,2,3,4,5呢,因为range函数括号里的范围是左闭右开的区间。至于2嘛,则是步长,前面文章也讲过步长,不再赘述。
2.搭配for使用
for i in range(5,9) : print(i) >>> 5 6 7 8
注意,步长或者区间也可以是负数哦
for i in range(-10, -100, -30) : print(i) >>>-10 -40 -70
3.pass 语句
看名字就知道,空,啥也不干,就是用来占位子的。看例子。
for letter in 'redmolly': if letter == 'l': pass print ('当前字母 :', letter) print ("good bye!") >>>redmoy good bye!
4.遍历中的高级用法
1.内置 enumerate 函数进行遍历,可以返回序列索引值加对应的序列值,用法看下面你就懂了。
enumerate 函数格式:
for index, item in enumerate(sequence): process(index, item)
enumerate 函数遍历实例:
sequence = [12, 34, 34, 23, 45, 76, 89] for i, j in enumerate(sequence): print(i, j)
>>>0 12
1 34 2 34 3 23 4 45
5 76 6 89
2.for循环嵌套使用(这个大家懂吗?就是外循环执行一次时,内循环全部执行,然后进入到外循环第二次,内循环又全部执行。下面的程序很经典,外循环控制行,内循环控制列)。
估计有同学会问程序中 end = " " 是什么意思,python中输出函数print输出完后会在其末尾添加换行符,打印一句就就行换行。如果在末尾加end = " "(""中间是空格)传递一个空字符串,这样print函数不会在字符串末尾添加一个换行符,而是添加一个空字符串(如下程序里是加空格)。
for i in range(1,6): for j in range(1, i+1): print("*",end='') print('\r') >>> * ** *** **** *****
5.for循环与while循环
1.如果你需要在遍历列表的同时修改列表,最好使用while循环。原因在于for循环在遍历列表的时候是需要根据索引来跟踪元素的,如果一边遍历,一边修改,就会导致索引修改,从而难以追踪元素。
以下代码是一个实例↓
users = ['cdx', 'red', 'molly'] new_users = [] while users: current_user = users.pop() print("current_user.title()) new_users.append(current_user) for new_user in new_users: print(new_user.title())
>>>
cdx
red
molly
ps(以后会把这些知识点作总结并串起来复习,加油更完python全栈,博主是学计算机专业的,有其他专业想交流的话可以私信博主)
上一篇: 浅谈c++中的KMP
下一篇: Python_实用入门篇_12