Python基础测试题
1、执行Python脚本的两种方式
答:python
python test.py
./test.py (Linux)
2、简述位、字节的关系
答:8位是1个字节。
3、简述ascii、unicode、utf-8、gbk的关系
答:ascii出现最早,unicode通用字符编码,gbk支持中文
4、请写出“李杰”分别用utf-8和gbk编码所占的位数
答:utf-8所占的位数:6
gbk所占的位数:4
5、Pyhton 单行注释和多行注释分别用什么?
答:单行注释:#
多行注释:""" """
6、声明变量注意事项有那些?
答:
1.变量名通常由字母,数字,下划线组成;
2.数字不能作为变量名开头;
3.不能以python中的关键字命名;
4.变量名要有意义;
5.不要用汉字和拼音去命名;
6.变量名要区分大小写;
7.推荐使用驼峰型(GuessAge或guessAge)和下划线(guess_age)来命名;
8.常量通常使用大写来定义.
7、如有一下变量n1=5,请使用int的提供的方法,得到该变量最少
答:bit_length
8、布尔值分别有什么?
答:布尔值分别有True和False。
空字符串: "" =>假
字符串有内容: " "=>真
0=>假
其他=>真

9、阅读代码,请写出执行结果
a = "henry" b = a.capitalize() print(a) print(b)
请写出输出结果:
答:
henry Henry
10、写代码,有如下变量,请按照要求实现每个功能
name = " henrY"
a.移除 name变量对应的值两边的空格,并输入移除后的内容

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

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

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

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

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

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

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

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

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

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

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

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

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

可迭代对象 == 可以被for进行循环获取
# 类,类型
str
各种方法
# 对象,根据str类型创建一个对象,s1
s1 = "henry"
s2 = "Hello World!"
22、请用代码实现:
a.利用下划线将列表的每一个元素拼接成字符串。li="henryericrain"
v = "_".join("henryericrain")
b.利用下划线将列表的每一个元素拼接成字符串,li=['henry','eric','rain'] (可选)
v = "_".join(['henry','eric','rain'])
23、Python2中的range和Python3中的range的区别?
答:
Python 2
range:立即创建
xrange : for 循环时才一个一个创建
Python 3
range: for 循环时才一个一个创建
for i in range(0,100,1): # 输出0-99 print(i) for i in range(100,0,-1): # 输出100-1 print(i)
24、实现一个整数加法计算器:
如:
content=input("请输入内容:") #如:5+9 或 5+ 9 或 5 + 9

25、计算用户输入的内容中有几个十进制小数? 几个字母?
如:
content=input("请输入内容:”) #如:abc112299
content=input("请输入内容:") #如:abc112299 c1 = 0 c2 = 0 for item in content: # 如果是数字 if item.isdigit(): c1 += 1 # 如果是字母: else: item.isalpha() c2 += 1 print("您输入的内容中有 %d 个数字" % c1) print("您输入的内容中有 %d 个字母" % c2)

26、简述int和9等数字以及str和"xx0o"等字符串的关系?
答:类和对象的关系。
27、制作趣味模板程序
需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意输出
如:敬爱可亲的xxx,最喜欢在xxx地方干xxx
name=input("请输入您的名字:") place=input("请输入您的地点:") hobby=input("请输入您的爱好:") print("敬爱可亲的%s,最喜欢在%s %s" % (name,place,hobby)) print("敬爱可亲的{0},最喜欢在{1}{2}".format(name,place,hobby))

28、制作随机验证码,不区分大小写。
流程:
-用户执行程序
-给用户显示需要输入的验证码 -用户输入的值
用户输入的值和显示的值相同时输出正确信息,否则继续生成随机验证码继续等
import random def check_code(): 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 while True: code = check_code() print("验证码为:",code) input_code=input("请输入验证码(不区分大小写):\n").lower() # 转为小写 code=code.lower() # 生成的验证码也转为小写 if input_code == code: # 判断 print("验证成功!") break else: print("验证码输入错误,请重新输入!") pass


29、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符:
如“苍老师""东京热”,则将内容替换为***
word=input("请输入一段话:") badwords='苍老师' badwords2='东京热' # 为真返回为0,为假返回-1 condition1=word.find(badwords) condition2=word.find(badwords2) if condition1 != -1 and condition2 !=-1: word=word.replace(badwords,"***") word=word.replace(badwords2,"***") print("屏蔽关键词输出:\n",word) else: print("正常输出:\n",word)

30、制作表格
循环提示用户输入:用户名、密码、邮箱(要求用户整入的长度不超过20个字符),如果用户输入q或Q表示不再继续输入,将用户输入的内容以表格形式打印出来。
s="" while True: name = input('>>>请输入用户名:') pwd = input('>>>请输入密码:') mail = input('>>>请输入邮箱:') template = "{0}\t{1}\t{2}\t".format(name,pwd,mail) # 模板,henry 123 henry@qq.com v = template.format(name,pwd,mail) s = s + v cond=input("继续请按1,退出请按q或Q:") if cond == '1': continue elif cond =='q'or cond =='Q': break else: print("请输入正确的编号!") print(s.expandtabs(20))

浙公网安备 33010602011771号