预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Python⾯向对象程序设计期末复习题及答案(含编程题)⼀、选择题1、关于⾯向过程和⾯向对象,下列说法错误的是(B)。A.⾯向过程和⾯向对象都是解决问题的⼀种思路B.⾯向过程是基于⾯向对象的C.⾯向过程强调的是解决问题的步骤D.⾯向对象强调的是解决问题的对象2、关于类和对象的关系,下列描述正确的是(D)。A.类是⾯向对象的核⼼B.类是现实中事物的个体C.对象是根据类创建的,并且⼀个类只能对应⼀个对象D.对象描述的是现实的个体,它是类的实例3、构造⽅法的作⽤是(C)。A.⼀般成员⽅法B.类的初始化C.对象的初始化D.对象的建⽴4、构造⽅法是类的⼀个特殊⽅法,Python中它的名称为(C)。A.与类同名B._constructC.initD.init5、Python类中包含⼀个特殊的变量(A),它表⽰当前对象⾃⾝,可以访问类的成员A.selfB.与类同名meC.thisD.⼆、填空题1、Python安装扩展库常⽤的是___⼯具。(pip)2、Python程序⽂件扩展名主要有__和__两种,其中后者常⽤于GUI程序。(py、pyw)3、查看变量类型的Python内置函数是______。(type())4、列表对象的sort()⽅法⽤来对列表元素进⾏原地排序,该函数返回值为_____。(None)5、查看变量内存地址的Python内置函数是_______。(id())6、Python源代码程序编译后的⽂件扩展名为___。(pyc)7、为了提⾼Python代码运⾏速度和进⾏适当的保密,可以将Python程序⽂件编译为扩展名____的⽂件。(pyc)8、____命令既可以删除列表中的⼀个元素,也可以删除整个列表。(del)三、判断题1、在Python中定义类时,如果某个成员名称前有2个下划线则表⽰是私有成员。(对)2、在类定义的外部没有任何办法可以访问对象的私有成员。(错)3、Python中⼀切内容都可以称为对象。(对)4、在⼀个软件的设计与开发中,所有类名、函数名、变量名都应该遵循统⼀的风格和规范。(对)5、定义类时所有实例⽅法的第⼀个参数⽤来表⽰对象本⾝,在类的外部通过对象名来调⽤实例⽅法时不需要为该参数传值。(对)6、对于Python类中的私有成员,可以通过“对象名._类名__私有成员名”的⽅式来访问。(对)7、使⽤内置函数open()且以”w”模式打开的⽂件,⽂件指针默认指向⽂件尾。(错)8、使⽤内置函数open()打开⽂件时,只要⽂件路径正确就总是可以正确打开的。(错)9、假设已导⼊random标准库,那么表达式max([random.randint(1,10)foriinrange(10)])的值⼀定是10。(错)10、Python是⼀种跨平台、开源、免费的⾼级动态编程语⾔。(对)11、Python3.x完全兼容Python2.x。(错)12、使⽤内置函数open()且以”w”模式打开的⽂件,⽂件指针默认指向⽂件尾。(错)13、使⽤内置函数open()打开⽂件时,只要⽂件路径正确就总是可以正确打开的。(错)14、Python变量使⽤前必须先声明,并且⼀旦声明就不能再当前作⽤域内改变其类型(错)15、Python采⽤的是基于值得⾃动内存管理⽅式。(对)16、在定义函数时,某个参数名字前⾯带有⼀个*符号表⽰可变长度参数,可以接收任意多个普通实参并存放于⼀个元组之中。(对)17、在定义函数时,某个参数名字前⾯带有两个*符号表⽰可变长度参数,可以接收任意多个关键参数并将其存放于⼀个字典之中。(对)18、定义函数时,带有默认值的参数必须出现在参数列表的最右端,任何⼀个带有默认值的参数右边不允许出现没有默认值的参数。(对)19、在调⽤函数时,可以通过关键参数的形式进⾏传值,从⽽避免必须记住函数形参顺序的⿇烦。(对)20、在调⽤函数时,必须牢记函数形参顺序才能正确传值。(错)21、调⽤函数时传递的实参个数必须与函数形参个数相等才⾏。(错)四、解答题1、阅读下⾯的代码,并分析假设⽂件“D:\test.txt”不存在的情况下两段代码可能发⽣的问题。代码1:>>>try:fp=open(r'd:\test.txt')print('Helloworld!',file=fp)finally:fp.close()代码2:>>>try:fp=open(r'd:\test.txt','a+')print('Helloworld!',file=fp)finally:fp.close()答:代码2:>>>try:fp=open(r'd:\test.txt','a+')print('Helloworld!',file=fp)finally:fp.close()答:2、写出下⾯代码的优化版本,提⾼运⾏效率。x=list(range(500))foriteminx: