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 循环的使用的主要内容,如果未能解决你的问题,请参考以下文章

while & for 循环的使用

python中的while循环与for循环怎么样那个比较好用?

java入门---循环结构 - for, while 及 do...while&break&continue

for循环结构

while循环&&[方法应用]

循环语句&方法