python-while循环语句


'''循环语句:特定代码重复执行------while 条件:---------------------------------------------------------------------------'''

#python会判断while后面的条件是否为真,若真,则执行下面的代码,直到不满足条件,循环执行结束
#若条件永远满足,则意味着循环永远被执行,称为死循环,是无意义的

#例子:计算1-100的累加和:1+2+3...+100=?
i = 1
sum = 0
while i <= 100:
     sum = sum + i  #i小于等于100时,sum不断+i
     i += 1    #[注意+=写在一起]i=i+1,再返回新的i值到第一行代码。循环执行
print('1-100的累加和为:%d' % sum) #结果为5050

#计算1-100间的奇数和:
i = 1
sum = 0
while i <= 100:
     if i % 2 != 0:
        sum = sum + i
     i += 1
print('1-100的奇数和为:%d' % sum) #结果为:2500

#打印出1-100之间所有偶数
i=2
while i<=100:
    print(i)
    i +=2
print('end')
#或者
i=1
while i<=100:
    if i % 2 == 0:
        print(i)
    i +=1
print('end')

#打印星星:第一行打印一个,第二行打印2个,直到打印10行
i='*'
my_sum=1
while my_sum<=10:
    print(i*my_sum)
    my_sum += 1
#或简化写法
i=1
while i<=10:
    print('*'*i)
    i+=1


'''while条件+continue---跳过本次循环:continue执行后,后面的代码不会再执行,而是直接回循环条件-------'''

#例子:1-100累加和,要求:不包含50
#先把原结果算出来,再加附加条件进行筛选、去除等操作
a = 1
my_sum = 0
while a <= 100:
     if a==50:
         a +=1  #若不加此赋值,a会直接输出50然后返回循环条件,进入死循环
         continue #返回while循环条件,后续条件不再执行【continue只存在于循环语句中】
     my_sum += a
     a += 1
print('结果为:%d' % my_sum)  #输出结果为5000(未计算50)

'''while条件+break---终止/退出所有循环:直接输出结果-------'''
a = 1
my_sum = 0
while a <= 100:
     if a==51:
         break  #当满足a=51时,直接终止循环,计算1-50的累加和
     my_sum += a
     a += 1
print('结果为:%d' % my_sum)  #输出结果为1-50的累加和:1275

'''while循环里嵌套while语句---一般只写最多两层while嵌套----'''
a=0
while a<3:
    j=0               #j 内循环的结果为0 1 2
    while j<3:
        print(j)
        j+=1
    a += 1         #a 外循环从0到2循环三次
#因此,结果为打印三次内循环的结果:012012012

'''continue和break只能跳过/终止本层while循环,不能跨层使用,不会终止/跳过其他层的循环'''



'''-------------------------【员工管理系统】练习---------------------------------------------------
---------------------------------------------------------------------------------------------------------'''
'''while后面条件不多的时候,可以直接写条件;条件较多,可以默认while+true,进入循环,再加其他条件'''
#员工管理系统:用户输入1,查看所有员工信息;输入2,新增一个员工;输入3,修改员工信息;输入4,删除员工信息;输入5,退出系统

#操作面板首页提示
print("欢迎使用 [员工管理系统v1.0] ")
#进入操作菜单:分别展示菜单选项

while True:   #每次返回结果后,重新回到菜单和输入页面
    print('*'*10+'MENU'+'*'*10)  #菜单名字
    print('1.展示所有员工信息')
    print('2.新增一个员工信息')
    print('3.修改一个员工信息')
    print('4.删除一个员工信息')
    print('5.退出系统')
    print('*'*24)     #菜单栏与输入栏分隔符
    user_input=input('请输入命令:')
    if user_input>='1' and user_input<='5':
        if user_input=='1':
            print('姓名\t年龄\t性别')
            print('Nicole\t18\tfemale')
            print('Danial\t22\tmale')
            print('Frank\t18\tfemale')
        elif user_input=='2':
            new_name = input('请输入新员工姓名:')
            age = input('请输入新员工年龄:')
            sex = input('请输入新员工性别:')
            print('新员工 %s 添加成功'% new_name)
        elif user_input=='3':
            name=input('请输入要修改的员工姓名:')
            print('员工 %s 信息修改成功!'% name)
        elif user_input=='4':
            name = input('请输入要删除的员工姓名:')
            print('员工 %s 信息删除成功!' % name)
        else :
            print('成功退出,欢迎再次使用本系统!')
            break     #输入退出命令,即不再展示菜单栏和输入栏
    else:
        print('请输入规定命令!')


'''---------------------------【猜拳游戏】练习-----------------------------------------------------
---------------------------------------------------------------------------------------------------------'''

print('欢迎来到猜拳小游戏')
print('*'*5+'游戏规则'+'*'*5)
print('      石头:1')
print('      剪刀:2')
print('      布:  3')
print('      退出:4')
print('*'*18)
import random  #引用随机数字库

while True:
    player=int(input('轮到您猜拳:'))  #限制输入类型
    computer=random.randint(1,3)   #电脑随机出1、2、3【用户与电脑比较的是数字,因此用户的输入必须为数字类型】
    if player==1 or player==2 or player==3 : #用户正常游戏
        if (player==1 and computer==2)or(player==2 and computer==3)or (player==3 and computer==1):
            print('Victory!!')
        elif player==computer:
            print('Tied')
        else:
            print('Defeat!!')
    elif player == 4: #用户退出游戏
        print('Exit successfully!')
        break
    else: #用户输入错误数字提醒
        print('Invalid input!')




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值