Python测试(总分:120)

  • 选择题(每题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

  1. 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中可变数据类型有__list___和___dict__,不可变数据类型有___int___和__str___

三、简答题(每题5分,共45分)

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

答:

1.以字母、数字、下划线组成,不能以数字开头;

2.不能用关键字。

2 简述 对象和 类的关系

答:

类:抽象的,只有一个,一类事物的总称;

对象:实体的,可以有多个,是类的具体实现。

3 Python里面如何实现tuple和list的转换?

答:tuple(list)

list(tuple)

  1. 介绍一下except的用法和作用?

答:

与try语句连用,如果try语句正确,则不会执行except语句;

如果try语句错误,则跳转到except语句,和except语句后的错误类型进行匹配,错误类型一致,则输出相应except语句下的内容。如果都不匹配,则再一次执行try语句,并且报错;

如果后面有else语句,在try语句正确的情况下执行;

如果后面有finally语句,一定执行;

5 Dict特点?

答:

1.key不重复,不可变;

  1. 数据无序排放;
  2. 数据无序排放;

3.可变数据类型。

6  List  和tuple 区别

答:

相同点:都是有序集合

异同点: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(‘请输入用户名:’)

pw = input(‘请输入用户密码:’)

if (name == ‘admin’)and  (pw == ‘123’):

print(‘登录成功’)

else:

Print(‘登录失败’)

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

答:

for i in range(3):

name = input(‘请输入用户名:’)

pw = input(‘请输入用户密码:’)

f (name == ‘admin’)and  (pw == ‘123’):

print(‘登录成功’)

break

else:

print(‘登录失败’)

2 写代码,有如下变量,请按照要求实现每个功能0.5分一个,共4分

name = " aleX is a man"

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

print(name.strip(‘ ’))

  1. 判断 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:])

  1. 从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存。

答:

a = input(‘请输入一个字符串:’)

b = a.upper()

f = open(‘d:/test/b.txt’,’w+’)

f.write(b)

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

答:

for i in range(1,10):

for j in range(1,10):

if j <= i:

print(j,'*',i,'=',(i*j))

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

答:

a = int(input(‘请输入一个六位数:’))

if len(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) >= 36 and (ge+ten+hu+th+wan+tw)<= 45:

Print(a,‘为幸运数字’)

else:

print(‘您输入的位数有误,请重新输入。。。’)

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

答:

num = int(input('请输入一个四位数:'))

if len(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('您输入的位数有误,请重新输入')

7.一:定义一个学生类。有下面的类属性:(12分)

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

答:

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_course(self):

print(最高的分数:,max(self.score))

zm = Student(张明,20,[69,88,100])

zm.get_name()

zm.get_age()

zm.get_course()

本文转自:https://blog.csdn.net/mr_tangshuai/article/details/91550317
作者:mr_tangshuai
注:老猿没有仔细看过题目和答案,不保证原文就是正确的,第一题老猿就认为有B和D两个答案。

转:Python考核试题及答案的更多相关文章

  1. Python面试题及答案汇总整理(2019版)

    发现网上很多Python面试题都没有答案,所以博主花了很长时间搜集整理了这套Python面试题及答案,由于网上的Python相关面试题大多数都是2019年的,所以我这个也是2019版的,哈哈~ (文末 ...

  2. 常见的 35 个 Python 面试题及答案

    1. Python 面试问题及答案 作为一个 Python 新手,你必须熟悉基础知识.在本文中我们将讨论一些 Python 面试的基础问题和高级问题以及答案,以帮助你完成面试.包括 Python 开发 ...

  3. python面试题以及答案

    目录 Python基础篇 1:为什么学习Python 2:通过什么途径学习Python 3:谈谈对Python和其他语言的区别 Python的优势: 4:简述解释型和编译型编程语言 5:Python的 ...

  4. python面试题及答案 2019

    利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法. 正解1: def trim(s): while s[:1] == ' ': s = s[1:] ...

  5. [ZZ]知名互联网公司Python的16道经典面试题及答案

    知名互联网公司Python的16道经典面试题及答案 https://mp.weixin.qq.com/s/To0kYQk6ivYL1Lr8aGlEUw 知名互联网公司Python的16道经典面试题及答 ...

  6. python公司面试题集锦 python面试题大全

    问题一:以下的代码的输出将是什么? 说出你的答案并解释. class Parent(object): x = 1 class Child1(Parent): pass class Child2(Par ...

  7. 网上搜集python面试题(更新中......)

    武Sir博客拿的面试题,答案都是自己写的,多有不足,请多多指教.更新中...... 1.为什么学习Python? a.写起来快,看起来明白.作为通用性的语言,除了一些对性能要求很高的场合,几乎什么都能 ...

  8. 一道Python面试题

    无意间,看到这么一道Python面试题:以下代码将输出什么? def testFun():    temp = [lambda x : i*x for i in range(4)]    return ...

  9. 很全的 Python 面试题

    很全的 Python 面试题 Python语言特性 1 Python的函数参数传递 看两个例子:           Python   1 2 3 4 5 a = 1 def fun(a):      ...

随机推荐

  1. KOA2 笔记

    KOA2 基于ES7开发,完全使用Promise并配合async来实现异步的node框架 核心是对node的HTT模块P进行了封装,用多个async函数组成处理链,来不断地接收HTTP请求(ctx对象 ...

  2. 老师问学生while判断

    老师问学生,这道题你会做了吗?如果学生答"会了(y)",则可以放学.如果学生不会做(n),则老师再讲一遍,再问学生是否会做了...... (1)直到学生会为止,才可以放学. (2) ...

  3. 1.1 Prism安装

    Prism框架有很多安装包,即便用了很长一段时间,也可能会不知道如何安装框架.细心分析包的依赖关系,发现所有包均依赖与依赖注入扩展插件,以使用Unity为例,Prism.Unity依赖Prism.Wp ...

  4. SpringBoot魔法堂:说说带智能提示的spring-boot-starter

    前言 前几个月和隔壁组的老王闲聊,他说项目的供应商离职率居高不下,最近还有开发刚接手ESB订阅发布接口才两周就提出离职,而他能做的就只有苦笑和默默地接过这个烂摊子了. 而然幸福的家庭总是相似的,而不幸 ...

  5. 【Mycat】Mycat核心开发者带你看尽Mycat三大核心配置文件

    写在前面 在分布式数据库中间件领域,Mycat和ShardingSphere可以说是在开源界有着相当重要的位置,不少小伙伴也在问我:Mycat和sharding-jdbc哪个好呀!其实,就我本身而言, ...

  6. 是什么让我节省了60%的编码时间?使用MBG

    MyBatis Generator简介 业务需求不断变更,数据库表结构不断修改,是我们逃不出的宿命.工欲善其事,必先利其器,是时候祭出神器了:MyBatis Generator(简称:MBG),它是一 ...

  7. Selective Acknowledgment 选项 浅析 1

     抓包的时候,发现 tcp 三次握手中一般会有几个options  一个是mss 一个是ws  一个sack perm 这次主要是来说一说 sack 这个选项: 1. 只重传超时的数据包,比较实用与后 ...

  8. PF_PACKET抓包mmap

    PACKET套接口创建 内核函数packet_create处理PF_PACKET套接口的创建工作.其参数sock->type决定了采用哪一种工作模式,如果参数type为SOCK_PACKET即第 ...

  9. 45. 跳跃游戏 II

    给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 你的目标是使用最少的跳跃次数到达数组的最后一个位置. 示例: 输入: [2,3,1,1,4]输出 ...

  10. @AliasFor注解

    @AliasFor注解 @AliasFor是一个注解,用于为注解属性声明别名. 代码如下:它有两个属性value和attribute @AliasFor注解注释了 自身,并且value和attribu ...