python测试题及答案,python简答题及答案
一、选择题(每题2分,共20分)
1.下面哪个语句在Python中是非法的?(二)
a、x=y=z=1 B、x=(y=z 1)
c、x、y=y,x D、x=y?x=x y
2.关于Python内存管理,下列说法错误的是(B)
a、变量不用提前声明B、变量不用先创建赋值直接使用。
c,变量不需要指定类型D,可以用del释放资源
3.3 .打印100-25 * 3% 4输出应该是什么?(二)
A.1B.97
C.25D.0
4.以下哪一项不是Python (B)的合法标识符
a、int32 B、40XL C、self D 、__name__
5.下列哪个陈述是错误的(A)
除了字典类型,所有的标准对象都可以用于布尔测试。
b,空字符串的布尔值为假
c,空列表对象的布尔值为假
D.任何数值为0的数字对象的布尔值都是假的。
6.下列表达式中正确的值是(C)
5 4j 2-3j B、322
1==1和2!=1?d、not(1==1和0!=1)
7.Python不支持的数据类型有(A)
a、char B、int C、float D、list
8.下列不能创建词典的说法是(C)
a、字典1={} B、字典2={ 3 : 5 }
c、dict3=dict([2,5],[ 3,4 ])
d、dict4=dict(([1,2],[3,4])
9.下列不能创建集合的说法是(C)
a、s1=set () B、s2=set ("abcd ")
c、s3=(1,2,3,4) D、s4=frozenset((3,2,1))
10.下列Python语句是正确的(D)
a、min=x if x y else y B、max=x y and?x : y
c、if (x y) print x D、while True :通过
二填空(每空一分,共10分)
设l=[a , b , c , d , e , f , g],则L[3]的值为_ d _ _?l [:5]的值是_ [d , e] _ l [33605]是_ [a , b , c , d , e] _ l [:]是_ [
在Python中,可变数据类型是_ _ list _ _和_ _ dict _ _,不可变数据类型是_ _ int _ _和_ _ str _ _
三、简答题(每题5分,共45分)
1声明变量有什么注意事项?
答:
1.由字母、数字、下划线组成,不能以数字开头;
2.不能用关键词。
2简述对象和类的关系?
答:
类:抽象的,只有一个,一类事物的总称;
Object: Entity可以有多个,是类的具体实现。
如何在Python中实现元组和列表的转换?
a:元组(列表)
列表(元组)
介绍except的用法和作用?
答:
与try语句一起使用,如果try语句正确,则except语句不会被执行;
如果try语句错误,跳转到except语句,匹配except语句后的错误类型,如果错误类型一致,输出对应except语句下的内容。如果它们都不匹配,则再次执行try语句并报告一个错误;
如果有else语句,在try语句正确的情况下执行;
如果有finally语句,就必须执行;
5 Dict特性?
答:
密钥是不重复和不可变的;
数据无序排放;
数据无序排放;
可变数据类型。
6列表和元组的区别
答:
相同点:都是有序集。
异同点:1。list是可变数据类型,tuple是不可变数据类型;
2.定义方法:list[] tuple()
3.list有append()、insert()等方法;Tuple没有。
7定义函数的规则是什么?
答:
以def开头,后面是函数名和
’():’,有参数写在()中,下一行缩进,如果有返回值则写在return后面。
8 面向对象语言都有封装,继承,多态,分别描述 封装,继承,多态的含义和作用?
答:
封装:把类的属性赋予给对象 作用:方便调用
继承:子类继承父类的属性和方法 作用:减少代码量
多态:一类事物的多种表现形式,父类的实现指向子类的引用,需要利用继承,方法重写,重载等方法 作用:减少代码量
9 在python中f = open('d:/a.txt', 'r')读取文件需要注意哪些
答:
f是变量。open是打开文件,如果文件不存在,则创建后再打开。‘d:/a.txt’是文件路劲,代表d盘中一个名为‘a.txt’的文件,’r’是以读的方式打开。
三 编程题(每题5分,共25分)
1 .实现登录功能(一个需求2分 ,共4分)
需求 1 实现用户输入用户名和密码,当用户名为 admin且 密码为 123 时,显示登陆成功,否则登陆失败!
答:
name=input(‘请输入用户名:’)需求2 实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次pw=input(‘请输入用户密码:’)
if(name==‘admin’)and(pw==‘123’):
print(‘登录成功’)
else:
Print(‘登录失败’)
答:
foriinrange(3):2 写代码,有如下变量,请按照要求实现每个功能(0.5分一个,共4分)name=input(‘请输入用户名:’)
pw=input(‘请输入用户密码:’)
f(name==‘admin’)and(pw==‘123’):
print(‘登录成功’)
break
else:
print(‘登录失败’)
name="aleXisaman"移除 name 变量对应的值两边的空格,并输出移除后的内容
print(name.strip(‘’))判断 name 变量对应的值a出现次数,并输出结果
print(name.count(‘a’))3. 判断 name 变量对应的值以a进行分割,并输出结果
print(name.split(‘a’))4. 将 name 变量对应的值a替换成w,并输出结果
print(name.replace(‘a’,’w’))5. 将 name 变量对应的值变小写,并输出结果
print(name.lower())6. 请输出 name 变量对应的值的第 2 个字符?
print(name[1])7. 请输出 name 变量对应的值的前 3 个字符?
print(name[:3])8. 请输出 name 变量对应的值的后 2 个字符?
print(name[-2:])从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存。
答:
a=input(‘请输入一个字符串:’)4 请用循环的方式输出九九乘法表b=a.upper()
f=open(‘d:/test/b.txt’,’w+’)
f.write(b)
答:
foriinrange(1,10):5.输入一个六位数,求各位数之和,如果各位数之和为36-45,则此数字为幸运数字。forjinrange(1,10):
ifj<=i:
print(j,'*',i,'=',(i*j))
答:
a=int(input(‘请输入一个六位数:’))6 某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。试输入一个数,并求出对应的数字。(8分)iflen(str(a))==6:
ge==a%10
ten==a%100//10
hu==a%1000//100
th==a%10000//1000
wan==a//10000%10
tw==a//100000
if(ge+ten+hu+th+wan+tw)>=36and(ge+ten+hu+th+wan+tw)<=45:
Print(a,‘为幸运数字’)
else:
print(‘您输入的位数有误,请重新输入。。。’)
答:
num=int(input('请输入一个四位数:'))7.一:定义一个学生类。有下面的类属性:(12分)iflen(str(num))==4:
ge=num%10
ten=num%100//10
hu=num//100%10
th=num//1000
ge1=ge+5
ge2=ge1%10
ten1=ten+5
ten2=ten1%10
hu1=hu+5
hu2=hu1%10
th1=th+5
th2=th1%10
print(‘加密后的数为:’,int((str(ge2)+str(ten2)+str(hu2)+str(hu2))))
else:
print('您输入的位数有误,请重新输入')
1 姓名
2 年龄
3 成绩(语文,数学,英语)[每课成绩的类型为整数]
类方法:
1 获取学生的姓名:get_name() 返回类型:str
2 获取学生的年龄:get_age() 返回类型:int
3 返回3门科目中最高的分数。get_course() 返回类型:int
写好类以后,可以定义2个同学测试下:
zm = Student('zhangming',20,[69,88,100])
返回结果:
Zhangming 20 100
答:
classStudent():def__init__(self,name,age,score):
self.name=name
self.age=age
self.score=score
defget_name(self):
print(‘学生姓名:’,self.name)
defget_age(self):
print(‘学生年龄:’,self.age)
defget_course(self):
print(‘最高的分数:’,max(self.score))
zm=Student(‘张明’,20,[69,88,100])
zm.get_name()
zm.get_age()
zm.get_course()
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。