news 2026/11/3 1:16:14

【python基础】练习题答案【2】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【python基础】练习题答案【2】

文章目录

  • 五. python程序结构
    • 1.选择题
    • 2. 编程题
  • 六. 函数
    • 1. 选择
    • 2.简答题
    • 3. 编程题
  • 七. python面向对象编程
    • 1.选择题
    • 2.简答题

五. python程序结构

1.选择题

1.[答案]:A
[解析]:通过分析程序,可以看出x = 3的条件是2 < k < 5 ,即k = 3 , 4 , 5。
2.[答案]:D
[解析]:拼写错误、表达式错误和缩进错误都会导致程序报错,但手动抛出异常不会。
3.[答案]:B
[解析]:A选项手动抛出异常程序不一定会终止,错误。CD选项并不一定导致程序终止,可能导致程序运行结果错误或跟预期不一样。只有B选项正确。
4.[答案]:A
[解析]:该程序对IndexError类型的异常进行了处理,但如果出现其他类型的异常程序仍然会终止,A选项错误,B正确。
5.[答案]:B
[解析]:输入1a,y中的代码不能正常运行,走到except 打印异常信息,之后不走else,运行finally,最后打印“end”,B选项正确。

2. 编程题

见github:第五章练习题

六. 函数

1. 选择

  1. [答案]:C
    [解析]:C选项中使用 from turtle import setup 导入的是 turtle库中 setup函数,而不是整个turtle库,所以C选项是错误的。

  2. [答案]:A
    [解析]:程序是由一系列函数组成的,这种描述是不准确的,可以说程序是由一系列代码组成的,所以选项选择 A选项。

  3. [答案]:D
    [解析]:函数中没有出现return语句默认返回None,D选项正确。

  4. [答案]:C
    [解析]:for n in numbers 要求 numbers是可以迭代的,列表、字符串和元组都是可以迭代的数据类型,C是浮点数,因此C选项错误。

  5. [答案]:B
    [解析]:调用 chanageInt(number1)即 chanageInt(2),将实参2传给函数中的形参number2,即number2=2,经过number2=number2+1,得到number2=3,因此函数内的打印结果为“changeInt:number2=3”。而number1是全局变量,并未在函数内部发生改变,因此函数外的打印结果为“number:2”,B选项正确。

  6. [答案]:C
    [解析]:调用函数 chanageList(strs),其中实参strs=[“1”,“2”],将实参strs传给形参list,执行append操作后list=[“1”,“2”,“end”],因此C选项正确。传递参数的过程相当于sfrs=list,这种复制方式属于非拷贝,两个列表的id地址相同,改变其中一个列表的元素另一个也会随之改变,因此strs=[“1”,“2”,“end”]

  7. [答案]:D
    [解析]:正确的方式是from…import…,D选项错误。

2.简答题

1.对于Python函数的定义,很多人都有自己的看法,请简要阐述定义函数的规则。
(1)函数代码块以def关键词开头,后接函数标识符和圆括号(),()后必须接冒号:。
(2)需要传入函数的参数必须放在圆括号内。
(3)可以先写注释添加函数说明,再写函数主体功能。
(4)函数主体内容需要缩进。
(5)return结束函数,返回值给调用方。不带表达式的return或者没有return相当于返回None。

3. 编程题

见github :第六章函数

七. python面向对象编程

1.选择题

1.[答案]:D
[解析]Pythoh中的类都继承自object父类,该父类中有很多内置的类方法。
2.[答案]B
[解析]:类的实例方法只有在创建对象后才可以调用。
3.[答案]:C
[解析]:类的_init_方法有参数name,因此创建类对象需要提供参数name,AB选项错误,调用类中函数即使没有额外参数也要包含括号,D选项错误,只有C选项正确。
4.[答案]:D
[解析]:类D继承了类A和C,因此类D有方法a、c和d,没有方法b,执行d.b()会报错,D选项正确。

2.简答题

  1. 请你来说说Python面向对象方法_new_()和_init()的区别?
    (1)_new_()是一个静态方法,而_init_()是一个实例方法。
    (2)_new_0方法会返回一个创建的实例,而_init_()什么都不返回。
    (3)只有在_new_(返回一个class的实例时后面的_init_()才能被调用。
    (4)当创建一个新实例时调用n e w \underline { } 0 ,,初始化一个实例时用_init_0。

  2. 请简述文件操作中的read()、readline()和readlines()之间的区别?
    这三个方法方法都可以用来读取文件内容,但它们也有区别:
    (1)read(size)方法读取整个文件。参数size表示读取的字节数。
    (2)readline(size)方法从文件中读取整行,包括" \ln "字符。参数size非负,则返回指定大小的字节数,但注意一次只读取一行内容。
    (3)readlines(hint)默认读入所有行,每行为列表中的一个元素。如果总行数字符数量超出了hint参数指定只会读取该参数指定的大小。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/11/3 1:14:32

【大模型认识】警惕AI幻觉,利用插件+微调来增强GPT模型

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华