• Python自学笔记8:实操案例五(循环输出26个字母对应的ASCII码值,模拟用户登录,猜数游戏,计算100-999之间的水仙花数)


    Python自学笔记8:实操案例五(循环输出26个字母对应的ASCII码值,模拟用户登录,猜数游戏,计算100-999之间的水仙花数)

    1.循环输出26个字母对应的ASCII码值
    第一种是用for循环输出:
    在这里插入图片描述

    x=97 #代表a的ASCI码值
    for _ in range(1,27):
        print(chr(x),'----->',x)#转换成对应的英文字母,再输出ASCII码值
        x+=1
    
    • 1
    • 2
    • 3
    • 4

    第二种是while循环输出:
    在这里插入图片描述

    print('-----使用while循环输出-------')
    x=97
    while x<=97+26:
        print(chr(x), '----->', x)  # 转换成对应的英文字母,再输出ASCII码值
        x += 1
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2.模拟用户登录
    这里有一个知识点,python里的else可以和while、for循环搭配使用
    如果正常结束循环,执行else;如果中途遇到break,不执行else
    网课传送门:https://www.bilibili.com/video/BV1Sw411Z779?p=43&spm_id_from=pageDriver
    第43讲
    在这里插入图片描述
    在这里插入图片描述
    中间又发生了个小错误,一百度又是tab和空格没对齐之类的问题,我重新敲了一遍就对了
    其他码友的参考解决方案:https://www.jb51.net/article/153879.htm
    我嫌麻烦,每次出这种不明问题又是ifelse套的多的就重新敲一遍,就当理思路了
    在这里插入图片描述

    for i in range(1,4):
        user_name=input('请输入用户名')
        user_pwd=input('请输入密码')
        if user_name=='admin' and user_pwd=='8888':
            print('登录成功')
            break
        else:
            print('用户名或密码不正确!')
            if i<3:
                print(f'您还有{3-i}次机会!!!')
    else:
        print('对不起,三次密码均输入错误,请联系管理员!!!')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    3.猜数游戏
    老师的二分搜索算法告诉我们,1-100之间猜数最多7次
    贴上老师的二分过程
    网课传送门:https://www.bilibili.com/video/BV1Sw411Z779?p=154
    第154讲
    在这里插入图片描述
    在这里插入图片描述

    import random
    rand=random.randint(1,100)
    for i in range(1,11):
        num=int(input('在我心中有个数1-100,请你猜一猜'))
        if num<rand:
            print('小了')
        elif num>rand:
            print('大了')
        else:
            print('恭喜您!猜对了!')
            break
    print(f'您一共猜了{i}次')
    if i<3:
        print('真聪明!')
    elif i<=7:
        print('还凑合')
    else:
        print('该学折半算法了!')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    以及,碰巧学会了怎么给py文件重命名:之前找了半天Rename,原来在这
    在这里插入图片描述

    4.计算100-999之间的水仙花数
    这个是经典题目了,当年学C语言的时候水仙花数、斐波那契数列、梅数没少折腾我,而且考核还不允许用库函数,给我折磨得······
    幸好现在有math这个模块,导入之后使用math.Pow就很简单了,比较需要注意的是十位的求法,先和10整除再对10取余
    例如:153要取出5,153//10=15,15%10=5
    百位:153%100=1,1*100+53=153(不要算成53!)
    个位:153%10=3
    在这里插入图片描述

    import math
    for i in range(100,1000):
        if math.pow((i%10),3)+math.pow((i//10%10),3)+math.pow(i//100,3)==i:
            print(i)
    
    • 1
    • 2
    • 3
    • 4
  • 相关阅读:
    (mouse_event参数)鼠标事件表
    《痞子衡嵌入式半月刊》 第 56 期
    代码随想录学习记录——栈与队列篇
    C++设计模式之观察者模式
    postgreSQL15发布,难掩激动快速尝鲜
    FPGA基础知识|芯片设计基础知识
    为SecureCRT配置密钥验证,实现免密登录远程Linux服务器
    (59.1)【windows提权】系统内核溢出漏洞提权:原理、利用过程、利用工具
    将小部分源码设计精髓带入到开发中来(工厂模式、适配器模式、抽象类、监听器)
    系统篇: ubuntu 下 sudo 命令执行慢的解决办法
  • 原文地址:https://blog.csdn.net/bailichen800/article/details/124955576