欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python3循环结构 while循环

程序员文章站 2022-03-23 11:24:37
Python3 while循环当循环次数*时通常会使用while循环。1、使用while循环输出九九乘法表i=1while i < 10: j = 1 while j < i + 1: #print(j, '×', i, '=', i * j, sep='', end='\t') print('%d*%d=%d'%(j,i,i*j),sep='', end='\t') j += 1 print() i +=...

Python3 while循环

当循环次数*时通常会使用while循环。

1、使用while循环输出九九乘法表

i=1
while i < 10:
    j = 1
    while j < i + 1:
        #print(j, '×', i, '=', i * j, sep='', end='\t')
        print('%d*%d=%d'%(j,i,i*j),sep='', end='\t')
        j += 1
    print()
    i += 1

结果输出:

1*1=1	
1*2=2	2*2=4	
1*3=3	2*3=6	3*3=9	
1*4=4	2*4=8	3*4=12	4*4=16	
1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	

2、求1+2+……+x的和

i=int(input("i=:"))
sum=0
while i!=0:
    sum=sum+i
    i=i-1

else:
    print("sum=:",sum)

输出:

i=:100
sum=: 5050

3、简单图形打印

i=0
while i<7:
    i +=1
    j=1
    while j < 7-i:
        print("*", end=" ")
        j += 1
    print()

输出结果:

* * * * * 
* * * * 
* * * 
* * 
* 

倒三角总看着不舒服

i=0
while i<7:
    i +=1
    j=1
    while j < i:
        print("*", end=" ")
        j += 1
    print()

输出:

* 
* * 
* * * 
* * * * 
* * * * * 
* * * * * * 

4、此外,跳出while循环有两种方法:
1.while条件语句为False
2.break

#!/usr/bin/python3
#coding:utf-8
# while条件语句为False,退出循环。
num = 0
while num < 3:
    print(num)
    num += 1
else:
    print("while条件语句为False,退出循环")
# break退出循环
num = 0
while True:
    print(num)
    num += 1
    if num > 2:
        print("break退出循环")
        break

运行结果:

0
1
2
while条件语句为False,退出循环
0
1
2
break退出循环

Process finished with exit code 0

5、搞个实例:
比如我们需要一个功能,如果一个公司得员工,做的项目超过或等于20个,则他的年终奖加上20000块钱,如果项目超过10个(小于20个)则他的年终奖加上10000块钱,项目不足10个(含10个)则年终奖按默认的发。

#!/usr/bin/python3
#coding:utf-8
money=0
project=int(input("请输出今年做的项目个数:").strip())
if project>=20:
    print("恭喜您今天做的项目超过了20个,追加奖金20000元")
elif 10<=project<20:
    print("恭喜您今天做的项目超过了10个,追加奖金10000元")
elif 0<=project<10:
    print("您今年的年终奖将按照默认的发放")
else:
    print("输入有误")

运行:

请输出今年做的项目个数:1
您今年的年终奖将按照默认的发放

请输出今年做的项目个数:11
恭喜您今天做的项目超过了10个,追加奖金10000元
请输出今年做的项目个数:29
恭喜您今天做的项目超过了20个,追加奖金20000元

发现每用一次都得运行一次,很麻烦,搞个while循环

#!/usr/bin/python3
#coding:utf-8
while 1:  #1在bool中为True,所以while 1可以正常运行
    project=input("请输出今年做的项目个数:").strip()#.strip()去空格
    if project =="Q":
        print("退出程序")
        break
    elif 10<=int(project)<20:
        print("恭喜您今天做的项目超过了10个,追加奖金10000元")
    elif 0<=int(project)<10:
        print("您今年的年终奖将按照默认的发放")
    elif int(project)>=20:
        print("恭喜您今天做的项目超过了20个,追加奖金20000元")


    else:
        print('输入错误')

运行:

请输出今年做的项目个数:1
您今年的年终奖将按照默认的发放
请输出今年做的项目个数:11
恭喜您今天做的项目超过了10个,追加奖金10000元
请输出今年做的项目个数:21
恭喜您今天做的项目超过了20个,追加奖金20000元
请输出今年做的项目个数:Q
退出程序

PS:这里输入字符串类型的会抛出异常

都是搞安全的上面这个例子替换成安全相关的吧

#!/usr/bin/python3
#coding:utf-8
import os
while 1:										#实现一直不停的循环
	cmd = input("root>>> ")							#终端提示符为>>>
	if cmd.lower() in ["exit","quit"]: break	#如果检测到用户输入exit,quit就结束程序,Python3 lower() 方法转换字符串中所有大写字符为小写。
	elif cmd: os.system(cmd)					#如果用户输入有内容,就执行输入的内容
	else: pass									#如果用户输入为空,则继续显示提示符等待用户输入,这行可以取消,写在这里主要是为了和前面的思路对应,便于阅读。

运行:

root>>> whoami
laptop-f9st6qqt\150
root>>> net user

\\LAPTOP-F9ST6QQT ���û��ʻ�

-------------------------------------------------------------------------------
150                    Administrator            DefaultAccount           
Guest                    sss                     WDAGUtilityAccount       
����ɹ���ɡ�

root>>> quit

Process finished with exit code 0

6、while里面还有一个continue,continue可以跳过(非退出)本次的循环执行下一次循环,可以用continue做一个简单的生成偶数的代码。

#!/usr/bin/python3
#coding:utf-8
num = 1
while num < 10:
    num += 1
    if num%2 > 0:
        continue
    print (num)

运行:

2
4
6
8
10

最后
———热爱网络安全与Python的兄弟们可以关注我的公众号,年前每日一更。

Python3循环结构 while循环

本文地址:https://blog.csdn.net/szgyunyun/article/details/110474976