python之while语句及其练习

while循环

while 条件满足:
满足条件执行的语句
else:
不满足条件执行的语句

求1+2+…+100

sum = 0
i =0
while i<=100:
	sum += i
	i +=1
print(sum)

练习:用户登陆系统

for i in range(3):        ##0,1,2
i = 0
while i<3:
    name = input('用户名:')
    passwd = input('密码:')
    if name == 'root' and passwd == 'westos':
        print('登陆成功')
        ## 跳出整个循环,不会再执行后面的内容
        break
    else:
        print('登陆失败')
        print('您还剩余%d次机会' %(2-i))
        i += 1
else:
    print('登陆次数超过三次,请刷脸')

while死循环

条件为真,一直输出

while True:
    print('~~~~~~~~~~~~~')

while 2>1:
    print('%%%%%')

while循环嵌套

练习:在控制台输出五行*,每行*号逐层递加

情况一:

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

方法一:

n = int(input('请输入你想打印的行数: '))
a=0
while a < n:
    b=0
    while b < a:
        print('*',end='')
        b += 1
    print('*')
    a += 1

方法二:

n = int(input('请输入你想打印的行数: '))
i=1                 #定义一个行计数器
while i <= n:
     j=1            #定义列计数器
     while j <= i:  #开始循环
         print('*',end='')
         j += 1     #退出循环
     print('')      #换行
     i += 1

方法三:for语句

n = int(input('请输入你想打印的行数: '))
for i in range(1,n+1):
     for j in range(1,i+1):
         print('*',end='')
     print('')

情况二:

*****
****
***
**
*
n = int(input('请输入你想打印的行数: '))
i=0
while i <= n:
    j = n
    while j >= i:
        print('*',end='')
        j -= 1
    print('')
    i += 1

情况三:

 ****
  ***
   **
    *
n=int(input('请输入你想打印的行数: '))
row = 1
while row <= n:
    kongge = 1
    while kongge <= row - 1:
        print(' ', end='')
        kongge += 1
    col = 1
    while col <= n - row +1:
        print('*', end='')
        col += 1
    print('')
    row += 1

情况四:

    *
   **
  ***
 ****
n=int(input('请输入你想打印的行数: '))
row = 1
while row <= n:
    kongge = 1
    col = 1
    while kongge <= n - row:
        print(' ', end='')
        kongge += 1
    while col <= row:
        print('*', end='')
        col += 1
    print('')
    row = row + 1

#\t:在控制台输出一个制表符,协助我们在输出文本的时候在垂直方向保持对齐

print('1 2 3')
print('10 20 30')
print('1\t2\t3')
print('10\t20\t30')

#\n:在控制台输出一个换行符

print('hello\npython')

#:转义字符

print('what\'s')
print("what's")

练习:猜数字游戏
if , while, break
1. 系统随机生成一个1~100的数字;
** 如何随机生成整型数, 导入模块random, 执行random.randint(1,100);
2. 用户总共有5次猜数字的机会;
3. 如果用户猜测的数字大于系统给出的数字,打印“too big”;
4. 如果用户猜测的数字小于系统给出的数字,打印"too small";
5. 如果用户猜测的数字等于系统给出的数字,打印"恭喜中奖100万",并且退出循环;

import random
i=0
while i < 5:
    num=int(input('您有%d次机会,请输入您猜测的数字:' %(5-i)))
    computer = random.randint(1,100)
    if num == computer:
        print('恭喜中奖')
        break
    elif num < computer:
        print('too small')
        print('您还剩余%d次机会' %(4-i))
    else:
        print('too big')
        print('您还剩余%d次机会' %(4-i))
    i+=1
print('电脑随机出的数为%d' %(computer))
print('您的五次机会以用完,请投币')

九九乘法表

row = 1
while row <= 9:
    col = 1
    while col <= row:
        print('%d * %d = %d\t' % (row, col, col * row), end='')
        col += 1
    print('')
    row += 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值