• python基础知识练习题(一)


    1.执行python脚本的两种方式
    答:
      1. python file.py
      2.在文件头添加#!/usr/bin/python路径 ./file.py
    2.简述位、字节的关系
    答:
      电脑只识别0和1 每个0或1 为一位 每八位为一个字节
    3.简述ascii、Unicode、utf-8、gbk关系
    答:
      ascii 由一个八位组成
      unicode 万国码最少十六位,没有上限
      utf-8 压缩的万国码,最少八位,没有上限
      gbk 中文,字母八位,中文十六位
    4.请写出“李杰”分别用utf-8和gbk编码所占的位数
    答:utf-8占三位,gbk占两位
    5.python单行注释和多行注解分别用什么
    答:#和"""
    6.声明变量注意事项有哪些
    答:可以用字母、数字(不能开头)、下划线,不能用内置关键字,最好用下划线分割。
    7.如果一下变量n1 =5 ,请使用int的提供的方法,得到该变量最小可以用多少个二进制位表示?
    答:101 三位
    8.布尔值分别有什么?
    答:Ture、False
    9.阅读代码,请写出执行结果
    a = "alex"
    b = a.capitalize
    print(a)
    print(b)
    答:alex、Alex
    10.写代码,有如下变量,请按照要求实现每个功能
    name = "aleX"
    a.移除 name变量对应的值两边的空格,并输入移除后的内容
    答:print(name.strip())
    b.判断 name变量对应的值是否以"al"开头,并输出结果
    答:print(name.startswith('al'))
    c.判断 name变量对应的值是否以"X"结尾,并输出结果
    答:print(name.endswith('X'))
    d.将 name变量对应的值中的 "l"替换为"p" ,并输出结果
    答:print(name.replace('l','p'))
    e.将 name变量对应的值根据"l"分割,并输出结果
    答:print(name.split('l'))
    f.请问,上一题e分割之后得到值是什么类型(可选)?
    答:列表
    g.将 name变量对应的值变大写,并输出结果
    答:print(name.upper())
    h.将 name变量对应的值变小写,并输出结果
    答:print(name.lower())
    i.请输出 name变量对应的值得第2个字符?
    答:print(name[1])
    j.请输出 name变量对应的值得前3个字符?
    答:print(name[0:2])
    k.请输出 name变量对应的值的后2个字符?
    答:print(name[2:4])
    l.请输出 name变量对应的值中"e" 所在索引位置?
    答:print(name.find('e'))
    m.获取子序列,仅不包含最后一个字符。如:oldboy则获取oldbo;root则获取roo
    答:print(name[0:len(name)-1])
    11.字符串是否可迭代对象?如可以请使用for循环每一个元素
    答:可以,for v in str:
    12.请用代码实现:
    a.利用下划线将列表的每一个元素拼接成字符串,li = "alexericrain"
    答:v = "_".join(li)
    b.利用下划线将列表的每一个元素拼接成字符串,li = ['alex','eric','rain']
    答:v = "_".join(li)
    13.python2 中的range 和python3中的range的区别?
    答:python2的 range(1,9)等于python3的list(range(1,9))
    14.实现一个整数加法计算器:
    如:
    content = input('请输入内容:') #如:5+9 或 5+ 9或 5 + 9
    答:

    num = input('请输入内容:')
    v = num.split('+')
    for n in v:
        n = int(n.strip()) + int(n.strip())
    print(n)
    

      

    15.计算用户输入的内容中有几个十进制小数?几个字母?
    如:
    content = input('请输入内容:') #如:asduiaf878123jkjsfd-213928
    答:

    content = input("请输入内容:")
    int_num = 0
    str_num = 0
    for n in content:
        if n in "0123456789":
            int_num += 1
        if n in "abcdefghijklmnopqrstuvwsyz":
            str_num += 1
    print('数字个数为:', int_num, '字母个数为:', str_num)
    

      

    16.简述int和9等数字 以及str 和"xxoo" 等字符串的关系
    答:
    int整数型可做运算
    str为字符串不能运算
    整数转换成字符串
    num = 9
    num = str(num)
    17.制作趣味模板程序
    需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实
    如:敬爱可爱的xxx,最喜欢在xxx地方干xxx
    答:

    user_name = input("请输入姓名:")
    user_add = input("请输入地址:")
    user_like = input("请输入爱好:")
    print('敬爱可爱的%s,喜欢在%s地方干%s' % (user_name, user_add, user_like))
    

      

    18.制作随机验证码,不区分大小写
    流程:
    - 用户执行程序
    - 给用户显示需要输入的验证码
    - 用户输入的值
    用户输入的值和显示的值相同时实现正确信息;否则继续生成随机验证码继续等待用户输入
    生成随机验证码代码示例:

    答:

    def check_code():
        import random
        checkcode = ""
        for i in range(4):
            current = random.randrange(0, 4)
            if current != i:
                temp = chr(random.randint(65, 90))
            else:
                temp = random.randint(0, 9)
            checkcode += str(temp)
        return checkcode
    code = check_code()
    
    while True:
        code = check_code()
        print(code)
        user_code = input("请输入验证码:").casefold()
        code = code.casefold()
        if user_code == code:
            print("成功!")
            break
    

      

    19.开发敏感语句过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符:
    如"苍老师" "东京热",则将内容替换为 ***
    答:

    user_str = input("请输入内容:")
    if "苍老师" in user_str:
        user_str = user_str.replace("苍老师", "***")
    else:
        pass
    if "京东热" in user_str:
            print(user_str.replace("京东热", "***"))
    else:
        print(user_str)

    20.制作表格
    循环提示用户输入:用户名、密码、邮箱(要求用户输入的长度不超过20个字符,如果超过则只有前20个字符有效)
    如果用户输入q或Q表示不能再继续输入,将用户输入的内容以表格形式打印
    答:

    v = []
    while True:
        user_name = input("请输入用户名:")
        user_pwd = input("请输入密码:")
        user_mail = input("请输入邮箱:")
        if len(user_name) > 20:
            user_name = user_name[0:20]
        if len(user_pwd) > 20:
            user_pwd = user_pwd[0:20]
        if len(user_mail) > 20:
            user_mail = user_mail[0:20]
        n = {"name": user_name, "pwd": user_pwd, "mail": user_mail}
        v.append(n)
        back = input("按q退出打印,任意键继续输入")
        if back == "q":
            user_str = "用户名	密码	邮箱"
            print(user_str.expandtabs(20))
            for lines in v:
                user_str = "{0}	{1}	{2}".format(lines["name"], lines["pwd"], lines["mail"])
                print(user_str.expandtabs(20))
            break
  • 相关阅读:
    HTML 防盗链 用src引用网上图片显示 403 Forbidden
    JS C# 正则表达式去除html字符中所有的标签(img em标签除外)
    net core 3.1使用ElasticSearch 全文搜索引擎
    VS2019开启调试,测试图片上传的时候,一点到图片上传,直接导致VS调试崩掉,返回 程序“[14764] iisexpress.exe”已退出,返回值为 -1 (0xffffffff)。 是什么原因导致的?
    NET 5 使用IdentityServer4 4.x
    服务器下配置springboot项目开机自启
    分布式技术文档
    win10系统ffmpeg命令初体验
    大数据Hadoop生态圈介绍
    MySQL之Explain详解
  • 原文地址:https://www.cnblogs.com/suiyang/p/6866360.html
Copyright © 2020-2023  润新知