zoukankan      html  css  js  c++  java
  • 我的python之路6(基础练习)

    ---恢复内容开始---

    1、执行Python 脚本的两种方式

    打开Windows命令提示符

    二、使用其它集成开发工具进行PYTHON程序的开发,如EclipsPycharm等,使用这种集成开发工具开发时,那都是大型的PYTHON项目了,以后开发大型PYTHON程序时肯定会用到的。

    2、简述位、字节的关系

    位:二进制位(bit)是计算机存储信息的基本单位,代表1个二进制数位,其值为0或1。
    字节:8个连续的二进制位为一个字节,可以存放1个西文字符的编码

    3、简述ascii、unicode、utf-­‐8、gbk 的关系

    ASIIC码:

    计算机是美国人发明和最早使用的,他们为了解决计算机处理字符串的问题,就将数字字母和一些常用的符号做成了一套编码,这个编码就是ASIIC码。ASIIC码包括数字大小写字母和常用符号,一共128个,1字节(byte)=8bit,8bit能表示的最大数是256,所以ASIIC编码中一个字符的大小就是1个字节

    Unicode编码:

    计算机进入中国后,ASIIC完全不够用,于是我们就制定了自己的GB2312编码,把汉字编码了进去。类似的在各国都有相同的情况,各国都开始制定自己的一套编码,计算机的编码越来越庞大,越来越乱,为了解决这一问题,Unicode应运而生。Unicode将各国文字统一编码,所以Unicode编码可以看做是ASIIC的扩展。特点:速度快,但是占内存大。

    UTF-8:

    UTF-8编码可以理解成Unicode编码的一种升级,为了节省存储空间。UTF-8根据实际使用情况调节存储编码的位数,将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存等等

    GBK:

    GBK也是基于Unicode编码的进一步优化,GBK的文字编码是用双字节来表示的,即不论中、英文字符均使用双字节来表示

    4、请写出“李杰”分别用utf-­‐8 和gbk 编码所占的位数

    24位

    16位

    5、Pyhton 单行注释和多行注释分别用什么?

    #

    '''

    '''

    6、声明变量注意事项有那些?

    1、变量名只能是:字母、数字或下划线的组合。
    2、变量名的第一个字符不能是数字。

    3、

    以下关键字不能声明为变量:

    and,as,assert,break,class,continue,defdel,elif,else,except,finally,for,from,global,if,import,in,is,lambda,not,for,pass,print,raise,returm try,while,with,yield.

    二:

    变量命名习惯

    1、

    驼峰体

    AgeOfOldboy

    2、

    下划线

    age_of_oldboy  (常用)

    下划线

    age_of_oldboy

    7、如有一下变量n1=5,请使用int 的提供的方法,得到该变量最少可以用多少个二进制位表示?

    n1 = 5
    r = n1.bit_length()
    print(r)

    输出  3

    8、布尔值分别有什么?

    布尔值 包括true和False两个值。在二进制中的0、1。在很多情况下,0被认为是 False,所有的非0 值均被认为是 True           

    9、阅读代码,请写出执行结果

    a = "alex"
    b = a.capitalize()
    print(a)
    print(b)


    输出

    alex
    Alex

    10、写代码,有如下变量,请按照要求实现每个功能
    name="aleX"
    a.

    移除name 变量对应的值两边的空格,并输入移除后的内容

    name = " aleX "
    v = name.strip()
    print(v)

    输出

    aleX

    b.
    判断name 变量对应的值是否以"al"开头,并输出结果

    name = "aleX"
    v = name.startswith("al")
    print(v)

    输出

    True

    c.
    判断name 变量对应的值是否以"X"结尾,并输出结果

    name = "aleX"
    v = name.endswith("X")
    print(v)

    输出

    True

    d.
    将name 变量对应的值中的“l”替换为“p”,并输出结果

    name = "aleX"
    m = str.maketrans("aleX","apeX")
    new_n = name.translate(m)
    print(new_n)

    输出

    apeX

    e.
    将name 变量对应的值根据“l”分割,并输出结果。


    f.
    请问,上一题e分割之后得到值是什么类型(可选)?


    g.
    将name 变量对应的值变大写,并输出结果

    name = "aleX"
    v = name.upper()
    print(v)

    输出

    ALEX

    h.
    将name 变量对应的值变小写,并输出结果

    name = "aleX"
    v = name.lower() 
    print(v)

    输出

    alex

    i.
    请输出name 变量对应的值的第2 个字符?


    j.
    请输出name 变量对应的值的前3 个字符?

    k.
    请输出name 变量对应的值的后2 个字符?
    l.
    请输出name 变量对应的值中“e”所在索引位置?
    m.
    获取子序列,仅不包含最后一个字符。如:
    oldboy则获取oldbo;
    root则获取roo

    a.
    21、字符串是否可迭代对象?如可以请使用for 循环每一个元素?

    只要能被for循环就是可迭代对象

    name="aleX"
    for z in name:
        print(z)

    输出

    a
    l
    e
    X

    22、请用代码实现:
    a.利用下划线将列表的每一个元素拼接成字符串,li="alexericrain"

    li = "alexericrain"
    v = "_".join(li)
    print(v)

    输出

    a_l_e_x_e_r_i_c_r_a_i_n

    b.利用下划线将列表的每一个元素拼接成字符串,li=['alex','eric','rain'](可选)

    li = ['alex','eric','rain']
    v = "_".join(li)
    print(v)

    输出

    alex_eric_rain

    23、Python2 中的range 和Python3 中的range 的区别?
    Python2 :
      range  立即创建

      xrange  for循环的时候才一个一个创建
    Python3 :
      range   for循环的时候才一个一个创建

    24、实现一个整数加法计算器:
    如:content=input('请输入内容:')#如:5+9

    value = input()
    v1,v2 = value.split("+")
    v1 = int(v1)
    v2 = int(v2)
    v = v1+v2
    print(v)

    输出
      14
    25、计算用户输入的内容中有几个十进制小数?几个字母?
    如:content=input('请输入内容:')#如:asduiaf878123jkjsfd-­‐213928

    c1 = 0
    c2 = 0
    content = input('请输入内容:')
    for item in content:
        if item.isdigit():
            c1 += 1
        if item.isalpha():
            c2 += 1
    print('数字个数:',c1)
    print('字母个数:',c2)

    输出

    请输入内容:asduiaf878123jkjsfd-­‐213928
    数字个数: 12
    字母个数: 13

    26、简述int和9等数字以及以及和"xxoo"等字符串的关系?

      类与对象的关系

    27、制作趣味模板程序
    需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实
    如:敬爱可亲的xxx,最喜欢在xxx 地方干xxx

    template = "敬爱可亲的{0},最喜欢在{1}地方干{2}"
    name = input(">>")
    interest = input(">>")
    site = input(">>")
    v = template.format(name,interest,site)
    print(v)

    输出

    敬爱可亲的liu,最喜欢在shui地方干zhongsheng

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

    while True:
        code = check_code()
        print(code)
        code = code.upper()
        i=input('>>')
        i = i.upper()
        if code == i:
            break
    
    print('通过')

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

    i = input('>>')
    if "苍井空" in i or "东京热" in i:
        v = i.replace('苍井空', '***')
        v = v.replace('东京热', '***')
    print(v)

    30、制作表格

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

    while True:
        v1 = input('>>')
        v2 = input('>>')
        v3 = input('>>')
        v11 = v1[0: 20]
        v22 = v1[0: 20]
        v33 = v1[0: 20]
        template = '{0}	{1}	{2}
    '
        text = template.format(v11, v22, v33)
        v = text.expandtabs()
        print(v)
        if v11 == 'q' or v11 == 'Q':
            break
























    ---恢复内容结束---

  • 相关阅读:
    Python自动发送邮件(可带附件)
    unittest单元测试(测试报告生成)
    unittest编写Web测试用例
    unittest跳过测试和预期失败
    unittest的discover方法使用
    Remote使用出现的问题及解决办法
    汇总篇--学习及练习过程中遇到过的问题
    webdriver--单选、复选及下拉框的定位
    webdriver--定位一组元素+iframe表单切换
    webdriver--设置元素等待
  • 原文地址:https://www.cnblogs.com/liushuizs/p/10262177.html
Copyright © 2011-2022 走看看