python基础考核试题及答案

python基础考核试题及答案
选择题(每题2分,共20分) 
1.下列哪个语句在Python中是非法的? (B
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.print 100 - 25 * 3 % 4 应该输出什么?  (B)
A.1            B.97          C.25           D.0
4、下面哪个不是Python合法的标识符 (B
A、int32      B、40XL      C、self      D、__name__
5、下列哪种说法是错误的 (A
A、除字典类型外,所有标准对象均可以用于布尔测试      B、空字符串的布尔值是False
C、空列表对象的布尔值是False                                        D、值为0的任何数字对象的布尔值是False
6、下列表达式的值为True的是 (C
A、5+4j > 2-3j     B、3>2>2        C、1==1and2!=1     D、not(1==1and 0!=1)
7、Python不支持的数据类型有 (A
A、char      B、int      C、float      D、list
8、以下不能创建一个字典的语句是 (C
A、dict1 = {}      B、dict2 = { 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 : pass
二.填空(每空一分,共10分)
设L=['a','b','c','d','e','f','g'],则:

L[3]值是'd'     L[3:5]值是['d', 'e']      L[:5]值是['a', 'b', 'c', 'd', 'e']        L[3:]值是['d', 'e', 'f', 'g']
L[-5:-2]值是['c', 'd', 'e']      L[::2]值是['a', 'c', 'e', 'g']
Python中可变数据类型有listdict,不可变数据类型有intstr
三、简答题(每题5分,共45分)
1、声明变量注意事项有那些?
答:①以字母、数字、下划线组成,不能以数字开头;②不能用关键字;③区分大小写。
2、简述 对象和 类的关系?
答:①类:抽象的,只有一个,一类事物的总称;②对象:实体的,可以有多个,是类的具体实现。
3、Python里面如何实现tuple和list的转换?
答:tuple(list)   list(tuple)
4、介绍一下except的用法和作用?
答:与try语句连用,如果try语句正确,则不会执行except语句;如果try语句错误,则跳转到except语句,和except语句后的错误类型进行匹配,错误类型一致,则输出相应except语句下的内容。如果都不匹配,则再一次执行try语句,并且报错;如果后面有else语句,在try语句正确的情况下执行;如果后面有finally语句,一定执行。
5、Dict特点?
答:①key不重复,不可变;②数据无序排放;③可变数据类型。
6、List  和tuple 区别
答:①相同点:都是有序集合。②异同点:list是可变数据类型,tuple是不可变数据类型;定义方式:list[]   tuple();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、实现登录功能(共4分)
①实现用户输入用户名和密码,当用户名为 admin且密码为 123 时,显示登陆成功,否则登陆失败!

name = input("请输入用户名:")
key = input("请输入密码:")
if name == "admin" and  key == "123":
    print("登录成功!")
else:
    print("登录失败!")

②实现用户输入用户名和密码,当用户名为 seven 且密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次答。

for i in range(3):
    name = input("请输入用户名:")
    key = input("请输入密码:") 
    if name == "seven" and  key == "123":
        print("登录成功!")
        break
    elif i < 2:
        print("登录失败!请重新输入。")       
    else:
        print("登录失败!")

2、写代码,有如下变量,请按照要求实现每个功能。name = " aleX is a man "(0.5分一个,共4分)
①移除 name 变量对应的值两边的空格,并输出移除后的内容:print(name.strip())
②判断 name 变量对应的值a出现次数,并输出结果:print(name.count("a"))
③判断 name 变量对应的值以a进行分割,并输出结果:print(name.split("a"))
④将 name 变量对应的值a替换成w,并输出结果:print(name.replace("a","w"))
⑤将 name 变量对应的值变小写,并输出结果:print(name.lower())
⑥请输出 name 变量对应的值的第 2 个字符:print(name[1])
⑦请输出 name 变量对应的值的前 3 个字符:print(name[:3])
⑧请输出 name 变量对应的值的后 2 个字符:print(name[-2:])
3、从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存。

s = input("请输入一个字符串:")
ss = s.upper()
f = open("b.text", 'w+')
f.write(ss)
f.close()

4、请用循环的方式输出九九乘法表。

for i in range(1, 10):
    for j in range(1, i + 1):
        print("%d*%d=%2d" % (j, i, i *j), end = " ")
    print()

5、输入一个六位数,求各位数之和,如果各位数之和为36-45,则此数字为幸运数字。

n = input("请输入一个六位数:")
sum = 0
for i in n:
    sum += eval(i)
if sum >= 36 and sum <= 45:
    print(n + "是幸运数字。")
else:
    print(n + "不是幸运数字。")

6、某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。试输入一个数,并求出对应的数字。(8分)

n = input("请输入一个四位数:")
m = []
for i in range(0, 4):
    m.append((eval(n[i]) + 5) % 10)
m[0], m[3] = m[3], m[0]
m[1], m[2] = m[2], m[1]
for i in m:
    print(i, end = '')
print()

7、定义一个学生类。(12分)
有下面的类属性:①姓名②年龄③成绩(语文,数学,英语)[每课成绩的类型为整数]
类方法:
①获取学生的姓名:get_name() 返回类型:str
②获取学生的年龄:get_age() 返回类型:int
③返回3门科目中最高的分数。get_course() 返回类型:int
写好类以后,可以定义2个同学测试下:
zm = Student('zhangming',20,[69,88,100])
返回结果:
Zhangming   20    100

class Student:
    def __init__(self, name, age, score):
        self.name = name
        self.age = age
        self.score = score
    def get_name(self):
        print("姓名:",self.name)
    def get_age(self):
        print("年龄:",self.age)
    def get_score(self):
        print("成绩:",max(self.score))
zm = Student('zhangming',20,[69,88,100])
zm.get_name()
zm.get_age()
zm.get_score()

 

你可能感兴趣的:(Python,Class)