while & for 循环的使用
Posted dp0702
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了while & for 循环的使用相关的知识,希望对你有一定的参考价值。
一、while 循环
1.while 循环的语句
while 条件: 语句体 语句体
使用while循环容易出现死循环,需要加入循环控制条件
times = 1 while times <=5: print("times:",times) #循环结束的控制语句 times +=1 print("程序结束")
例如:猜字游戏,假设答案是9 ,让用户从键盘中输入一个整数,使用while循环,提供多次机会给用户猜测。比如说,给用户三次机会
num = 9 times = 1 while times <= 3: num1 = int(input("请输入一个整数: ")) if num1 == num: print("您猜对了") elif num1 < num: print("您猜小了") else: print("您猜大了") times = times + 1
2.break/continue
break 语句会跳出循环,并终止循环;continue 语句会跳出当层循环,并且开始下一次循环。
例如:输出1到10,如果是2的倍数,则不输出(continue用法)
times =1 while times <= 10: if times % 2 ==0: times +=1 continue print(times) times = times +1
例如:输出1到20,如果是5的倍数,则结束程序
times = 1 while times <=20: if times % 5 ==0: times +=1 bresk print(times) times +=1
print("程序结束")
练习:1.求100以内的奇数之和 99+97+95+93+.......+1
第一种:
n = 0 sum = 0 while n <= 99: n = n + 1 if n % 2 ==0: continue sum = sum + n print(sum)
第二种: n = 99 sum = 0 while n > 0: sum = sum + n n = n-2 print(sum)
2.创建一个包含了100以内的奇数的列表
list = [] n = 101 while n >= 2: if n % 2 != 0: n = n - 2 list.append(n) print(list)
二、for 循环语句
for 变量 in 范围: for 循环的循环体 ----循环的次数,由指定的范围内的数量
1.遍历字符串
str = "hello,world!" total = 0 for i in str: print(i) total = total + 1 print(total)
2.遍历列表
list = [1,2,3,"test",34,"python"] for l in list: print(l)
3.range() 函数 range(始起值,结束值,步长值) range(始起值,结束值) 取值范围:始起值,到(结束值-1)
for i in range(0,6): print(i)
例如:请写出一段 python 代码实现删除一个list里面的重复元素
list = [2,3,4,2,4,3,5,11,23,13] lst =[] for i in list: if i not in lst: lst.append(i) print(lst) print(sorted(lst))
4.for循环的嵌套
for 变量 in 范围: 语句 for 变量 in 范围: 循环体
for i in range(1,10): print("i-->:",i) for j in range(1,i+1): print("j-->:",j,end=" ") print()
例如:使用for循环嵌套实现99乘法表
# 第1种 for i in range(1,10): for j in range(1,i+1): print("%d*%d=%2d"%(i,j,i*j),end = " ") print() # 第2种 for i in range(1,10): for j in range(1,i+1): print(str(i) + "*" + str(j) + ‘=‘ + str(i*j),end=" ") print()
5.冒泡排序
例如:定义一个列表,如 lst = [3,8,2,12,56,9],然后把列表中的数据由高到低排序,并输出。
lst = [3,8,2,12,56,9] for i in range(0,len(lst)-1): for j in range(0,len(lst)-1-i): if lst[j] < lst[j+1]: lst[j],lst[j+1] = lst[j+1],lst[j] print(lst)
以上是关于while & for 循环的使用的主要内容,如果未能解决你的问题,请参考以下文章
python中的while循环与for循环怎么样那个比较好用?