whilefor循环的使用
- 格式:pdf
- 大小:63.03 KB
- 文档页数:2
whilefor循环的使⽤
⼀、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="\t")
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 = "\t")
print()
# 第2种
for i in range(1,10):
for j in range(1,i+1):
print(str(i) + "*" + str(j) + '=' + str(i*j),end="\t")
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)