Python 第一次作业

时间:2022-03-15 16:41:58

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

   答:第一种通过在命令行中通过指定python解释器路径以及python文件路径的方式执行文本。第二种通过进入python交互式命令方式执行脚本。

2、简述位、字节的关系

   答:位是电子计算机中的最小单位,每一位的状态只能为0或者1。

         八位组成一个字节。8个二进制位构成1个"字节(Byte)",它是存储空间的基本计量单位。1个字节可以储存1个英文字母或            者半个汉字,换句话说,1个汉字占据2个字节的存储空间。

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

    答:ascii只能表示原始的字母和字符一共256个编码,由一个字节表示

          unicode为万国码,由至少两个字节表示。可以表示各种语言

          utf-8为节省存储空间,根据存储需要指定所需要的字节对字符进行编码

          gbk对中文进行编码

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

    答:utf-8为6位,gbk为4位

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

    答:单行注释:#注释文本

          多行注释:"""注释文本"""

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

     答:变量由字母数字和下划线组成。变量必须由字母和下划线开头。变量不能为关键字和语言的组成成分。

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

      答:101(3位)bit_length

8、布尔值分别有什么?

     答:True 和 False

9、阅读代码,请写出执行结果
a="alex"
b=a.capitalize()
print(a)
print(b)

请写出输出结果:alex

                          Alex

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

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

     答: name.strip()

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

    答:name.startwith('al')

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

    答:name.endwith('X')

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

    答:name.replace('l','p')

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

    答:不保留l,为name.split('l')。保留l为name.partition('l')

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

    答:分割后得到列表

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

    答:name.upper()

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

    答:name.lower()

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

    答:name[1]

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

    答:name[0:3]

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

    答:name{len(name)-2,len(name)]

    l.请输出name 变量对应的值中“e”所在索引位置?

    答:name.index('e')

    m.获取子序列,仅不包含最后一个字符。如:oldboy则获取oldbo;root则获取roo

    答:name[0:-2]

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

    答:是的,for item in 字符串

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

                               '_'.join(li)

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

                              '_'.join(li)

23、Python2 中的range 和Python3 中的range 的区别?              

    答:Python2中的range一旦声明,就在内存中开辟相应的空间而Python3中的range只在代码循环时才开辟内存空间  

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

a=content.split('+')
   sum=0
   for item in a:
        sum=sum+int(item)
   print(sum)

25、计算用户输入的内容中有几个十进制小数?几个字母?

如:content=input('请输入内容:')  #如:asduiaf878123jkjsfd--‐213928

  content=input('请输入内容:')
    num=0
    alph=0
    for i in content:
        if(i.isdecimal()):
            num=num+1
        elif i.isalpha():
            alph=alph+1
        else:
            pass
  print(num)
  print(alph)

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

   int表示数据类型为整形,9为整形数字。str表示字符串类型,“xxoo”表示一个字符串

27、制作趣味模板程序。需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实

如:敬爱可亲的xxx,最喜欢在xxx 地方干xxx

 
# !/usr/env/bin python template="敬爱可亲的{0},最喜欢在{1}地方{2}" name=input("请输入名字:")
place=input("请输入地点:")
hobby=input("请输入爱好:")
print(template.format(name,place,hobby))

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

生成随机验证码代码示例:

Python 第一次作业

29、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符:

如"苍老师""东京热",则将内容替换为***

# !/usr/env/bin python name=input("请输入内容:")
if name=="东京热" or name=="苍老师":
    m=str.maketrans(name,'***')
    v=name.translate(m)
    name=v
print(name)
30、制作表格。循环提示用户输入:用户名、密码、邮箱(要求用户输入的长度不超过20 个字符,如果超过则只有前20 个字符有效)如果用户输入q 或Q表示不再继续输入,将用户输入的内容以表格形式大隐
 
# !/usr/env/bin python name=input("请输入用户名:")
passwd=input("请输入密码:")
email=input("请输入邮箱:")
s1=name.lower()
s2=passwd.lower()
s3=email.lower()
if s1!='q' and s2!='q' and s3!='q':
    v1=name.ljust(20,' ')
    v2=passwd.ljust(20)
    print(v1,v2,email)