2023.12.01python学习随堂练习

一、循环 

用Python模拟一日可以登录三次的界面

i=0
while i<3:
    user_name = input('请输入你的账号')
    password = input('请输入你的密码')
    if user_name == 'ycy' and password  == '12345':
        print('正在登陆')
        i=8
    else:
             if i<2:
                print('密码错误,您还有',2-i,'次机会')
             i+=1
if i==3:
    print('已输错三次,请明天再试')

 第二次写的,第一个if那里没有写 i<2,依然正常运行。好像这个不太重要。毕竟i==3while循环就结束了,是一样的

i=0
while i<3:
    user_name = input('请输入您的用户名')
    passwaed = input('请输入您的密码')
    if user_name =='ycy' and passwaed =='12345':
        print('正在登录')
        i=8
    else:
        print('密码错误,您还剩余',2-i,'次机会')
        i += 1
if i==3:
    print('您已经输错三次,请明天尝试')

二、嵌套循环

1.用*画一个三行四列的矩形

for i in range(1,4):#行
    for j in range(1,5):#列
        print('*',end='')
    print()#换行

end=''

添加这个在末尾就不会换行了

2.用*画一个直角三角形

for i in range(1,6):#行
    for j in range(1,i+1):#列
        print('*',end ='')
    print()#换行

分析直角三角形的特点,第几行就有几列。也就是说,内部循环和外部有关系。所以用(1,1+i)

同理,倒三角形、等腰三角形

for i in range(1,6):#行
    for j in range(1,7-i):#列
        print('*',end ='')
    print()#换行
for i in range(1,6):#行
    for j in range(1,7-i):#列
        print(' ',end ='')
    for k in range(1,i*2):#列
        print('*',end ='')
    print()#换行

 任意行数(奇数)的菱形

row_number=eval(input('请输入菱形行数:'))
while row_number>3:#菱形必须是奇数行
    if row_number%2!=0:
        top_row = int((row_number + 1) / 2)  # 上面等腰三角形的行数
        for i in range(1, top_row + 1):  # 行
            for j in range(1, top_row + 1 - i):  # 列
                print(' ', end='')
            for k in range(1, i * 2):  # 列
                print('*', end='')
            print()  # 换行
        for i in range(top_row + 1, row_number + 1):  # 行
            for j in range(0, i - top_row):  # 列
                print(' ', end='')
            for k in range(1, (row_number + 1 - i) * 2):  # 列
                print('*', end='')
            print()  # 换行
        break
    else:
        row_number = eval(input('请重新输入菱形行数(奇数)'))

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值