实验1-Python程序设计基础实验.md

实验1 Python程序设计基础实验(问答库)

实验1 Python程序设计基础实验(问答库)

  1. 【单选题·易】本课程实验1「Python程序设计基础实验」推荐使用的开源数据科学平台是: A. Photoshop B. Anaconda C. Office D. 仅机器语言汇编器 答案:B 解析: 课程以 Anaconda 作为 Python 编程环境。它是广泛使用的开源数据科学平台,集成 Conda、Spyder 和 Jupyter Notebook,不是图像处理软件或办公软件。
  2. 【单选题·易】Spyder 的用户工作区主要包括: A. 仅浏览器 Web 主页 B. 程序编辑区和 IPython 控制台 C. 仅 Anaconda Prompt D. 仅服务器终端 答案:B 解析: 课程指出 Spyder 工作区主要包括程序编辑区和 IPython 控制台,可交互执行代码或运行 .py 文件。浏览器 Web 主页和服务器终端属于 Jupyter Notebook。
  3. 【多选题·中】本实验在 Anaconda 中重点使用的三个工具是: A. Anaconda Prompt B. Spyder C. Jupyter Notebook D. Photoshop 答案:ABC 解析: 课程将 Anaconda Prompt、Spyder、Jupyter Notebook 列为三个常用工具。Prompt 用于包管理,Spyder 用于编写与运行程序,Jupyter 用于网页交互式编程。Photoshop 不属于本实验环境。
  4. 【判断题·易】启动 Jupyter Notebook 后会出现服务器终端和浏览器 Web 主页;使用期间可以随时关闭服务器终端,网页工作界面不受影响。 答案:× 解析: 课程强调服务器终端显示服务器信息,使用期间不能关闭。关闭后服务中断,浏览器中的工作界面将无法继续运行。
  5. 【单选题·中】在 Anaconda Prompt 中安装第三方库 jieba,下列哪条命令符合本实验要求? A. conda list jieba B. pip install jieba C. python jieba D. import jieba 答案:B 解析: 第三方库安装命令为 pip install 库名 或 conda install 库名。课程示例为 pip install jieba、pip install wordcloud。conda list 用于查看已安装包,import 是导入而非安装。
  6. 【多选题·中】使用模块前必须先导入。下列属于课程给出的导入方式的是: A. import math B. from math import cos, pi C. from math import * D. from random import randint as rand 答案:ABCD 解析: 四种方式分别是:导入整个模块、导入指定对象、导入全部内容、给模块或对象起别名。A、B、C、D 均为课程实例。
  7. 【判断题·中】file.write() 可以直接把整数、浮点数写入文件,并且会自动在末尾换行。 答案:× 解析: 课程明确 write() 只能写入字符串,整数和浮点数须先转换成字符串;它不会自动换行,需要手动添加 \n。
  8. 【判断题·易】定义无参函数时,函数名后面的圆括号可以省略。 答案:× 解析: 无参函数没有形式参数,但定义时函数名后的圆括号不能省略,否则会出现语法错误。
  9. 【单选题·中】下列打开文件的写法中,能避免 Windows 路径里 \t 被当成转义字符的是: A. fw = open("d:\test.txt", "wt") B. fw = open(r"d:\test.txt", "wt") C. fw = open(d:\test.txt, "wt") D. fw = write("d:\test.txt") 答案:B 解析: 课程示例为 fw = open(r"d:\test.txt", "wt")。前缀 r 表示原始字符串,使 \t 不被识别为转义。A 会因转义导致路径错误;C 不是合法字符串;D 不是打开文件的方法。
  10. 【单选题·难】在 Spyder 中运行下列程序,输出结果是:
def modifyList(b):
    for i in range(len(b)):
        b[i] *= b[i]
    print('b =', b)

a = [4, 5, 6]
modifyList(a)
print('a =', a)

A. b = [16, 25, 36] 换行后 a = [4, 5, 6] B. b = [16, 25, 36] 换行后 a = [16, 25, 36] C. b = [4, 5, 6] 换行后 a = [4, 5, 6] D. 程序报错,列表不能作为函数参数 答案:B 解析: 列表是可变对象,作实参时向形参传递的是内存地址,形参与实参共用同一存储。函数内把各元素改为平方后,实参 a 也会变成 [16, 25, 36]。这是本实验函数调用部分的核心原理。

  1. 【简答题·中】实验作业要求:读取一个文本文件,将内容全部转为大写后写入另一个文件。请写出一段可运行的 Python 程序(可用 with 语句),并说明文件操作的三个步骤。 答案: 文件操作三步为:(1)打开文件;(2)读、写文件;(3)关闭文件。推荐用 with 自动关闭。示例程序:
with open('input.txt', 'w', encoding='utf-8') as f:
    f.write('Hello Python\n')

with open('input.txt', 'r', encoding='utf-8') as fin:
    content = fin.read()

with open('output.txt', 'w', encoding='utf-8') as fout:
    fout.write(content.upper())

解析: 评分要点:写出打开、读写、关闭三步;程序语法正确、可运行;使用 upper() 转大写;读写中文时指定 encoding='utf-8';用 with 或显式 close()。漏写关闭或 write() 直接写非字符串应扣分。

  1. 【简答题·难】结合本实验操作,完成下列两问: (1)写出定义并调用两数求和函数的可运行代码; (2)说明标准库与第三方库在安装、导入上的区别,并各举课程中的一个例子。 答案: (1)求和函数:
def add(a, b):
    s = a + b
    return s

x = add(5, 4)
print(x)

运行后输出 9。 (2)标准库随解释器提供,一般不必另行安装,使用前仍须 import,例如 import math 后使用 math.pi、math.sin(math.pi / 2),或 from random import randint。第三方库由社区开发,需先在 Anaconda Prompt 中执行 pip install 库名 或 conda install 库名,安装后再导入才能使用,课程示例为 jieba(中文分词)、wordcloud(词云),作业还要求安装 requests 做简单网络请求。只安装不导入仍会引发 NameError。 解析: 评分要点:函数定义含 def、形参、return,并有调用与输出;区分“不必安装”与“先安装再导入”;例子须来自课程(math/random 与 jieba/wordcloud/requests)。代码不能运行或把标准库当成必须 pip install 的对象不得满分。

下载此文件