昨天有些题目,做的还不是很明朗,今天的话简单的看了下答案,通过自己的思路,终于完成了题目

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

Cmd 和双击   题目理解错误吧

正确答案是:

python 1.py

./ 1.py

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

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

 概念题个人没有过多的了解 所以当时跳过,在这里百度了一下

ascii 是最早美国用的标准信息交换码,把所有的字母的大小写,各种符号用 二进制来表示,共有256中,加入些拉丁文等字符,1bytes代表一个字符,

Unicode是为了统一世界各国语言的不用,统一用2个bytes代表一个字符,可以表达2**16=65556个,称为万国语言,特点:速度快,但浪费空间,

可以用在内存处理中,兼容了utf-8,gbk,ASCII,

utf-8 为了改变Unicode的这种缺点,规定1个英文字符用1个字节表示,1个中文字符用3个字节表示,特点;节省空间,速度慢,用在硬盘数据传输,网络数据传输,相比硬盘和网络速度,体现不出来的,

gbk  是中文的字符编码,用2个字节代表一个字符

 “李杰” 分别用 utf-­‐8 和 gbk所占的位数 :6 和 4

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

int的方法还不熟悉 这题就直接过了 其实用pycharm,试试也能试出来

n1 = 5
t = n1.bit_length()
print(t)
"""
3
"""

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

Python2 中的 range 直接生成数字,Python2用 xrange 效果和Python3 中的 range 一样

Python3 中的 range 在用for循环的时候在生成数字

24、实现一个整数加法计算器:

content = input('请输入内容:') # 如: 5+9 或 5+ 9 或 5 + 9

content = input('请输入加法:')
v = content.replace(" ","")
v1,v2 = v.split("+")
v3 = int(v1) + int(v2)
print(v3)

这道题的话,有新操作,不清楚split()同时赋值2个,当时也是卡在这里

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

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

说出来我都不信,这道题在今天突然灵光一闪想出了答案

c1 = 0
c2 = 0
test = input("请输入任意字符:")
for v in test:
    if v.isnumeric() == True:
        c1 += 1
    elif v.isalpha() == True:
        c2 += 1
print("数字为:"+ str(c1) +"  字符为:" +str(c2))
"""
请输入任意字符:asduiaf878123jkjsfd-­‐213928
数字为:12  字符为:13
"""

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

类和对象的关系

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

有更准确的写法

test = input("输入词汇:")
v = test.replace("苍老师","***")
v = v.replace("东京热","***")
print(v)
"""
输入词汇:我爱苍老师和东京热
我爱***和***
"""

30、制作表格循环提示用户输入:用户名、密码、邮箱 (要求用户输入的长度不超过 20 个字符,如果超过则只有前 20 个字符有效)

如果用户输入 q 或 Q 表示不再继续输入,将用户输入的内容以表格形式打印

看了答案,不是很全面,我又自己补充了下,都完成了题目要求,但代码可能写得不是很规范

s = ""
while True:
    id= input("id:")
    passward = input("passward:")
    email = input("email:")
    i = id[0:20]
    p = passward[0:20]
    e = email[0:20]
    v = "{}\t{}\t{}\n"
    t = v.format(i,p,e)
    s += t
    a = s.expandtabs(21)
    flag = input("是否继续输入? (按Q/q退出,任意键继续)\n").lower()
    if flag == "q" :
        break
print(a)

expandtabs(21)这里预留了21位是因为如果用户输入满20个字符后,会在空出20个空格,打印出比较难看,所以多预留了一位

多打代码多练习,同时多了解一些不是特别重点的方法。现在的话,我就相对重点的方法,
format()方法用的不太熟练