华南理工大学 Python第7章课后小测-2
阅读原文时间:2023年07月09日阅读:2

1、(单选)以下选项中使Python脚本程序转变为可执行程序的第三方库的是(本题分数:3)
A) Networkx
B) pyinstall
C) Requests
D) PyPDF2
您的答案:B  正确率:100%

2、(单选)以下不属于Python的pip工具命令的选项是:(本题分数:3)
A) help
B) uninstall
C) search
D) get
您的答案:D  正确率:100%

3、(单选)用于将Python程序打包成可执行文件的工具是:(本题分数:3)
A) Wheel
B) docopt
C) pyinstall
D) pip
您的答案:C  正确率:100%

4、(单选)下面能支持自顶向下设计方法的是:(本题分数:3)
A) 分支结构
B) 对象
C) 循环结构
D) 函数
您的答案:D  正确率:100% 

5、(单选)自顶向下设计主要由下列哪个语法元素实现?(本题分数:3)
A) 对象
B) 函数
C) 循环结构
D) 过程
您的答案:B  正确率:100%

6、(单选)以下程序对字典进行排序,按value从小到大排序,空白处的代码是(  ):

dt={'b':6, 'c':2, 'a':4}
s=sorted(dt.items(),key=_____)
print(s)

(本题分数:3)
A) lambda x:x[0]
B) lambda x:x[1]
C) dt.values()
D) dt.keys()
您的答案:B  正确率:100%

7、(单选)以下程序从CSV格式的文件中读入数据,将由每行数据组成的列表写入ls中,空白处的代码是:

fo=open("demo.csv", "r")
ls=[]
for line in fo:
    line=line.replace("\n","")
    ls.append(_____)
fo.close()

(本题分数:3)
A) line.split()
B) line.split(",")
C) line
D) "".join(line)
您的答案:B  正确率:100% 

8、(单选)以下代码,将列表元素不重复的写入文件,空白处的代码是(  ):

fo = open("demo.txt", "w+")
ls = ['1','2','3']
for i in ls:
    _____
fo.close()

(本题分数:3)
A) fo.writelines(ls)
B) fo.writeline(i)
C) fo.write(i)
D) fo.write(ls)
您的答案:C  正确率:100%

9、(单选)如果demo.txt文件存在,以下语句报错的是。(本题分数:3)
A) f = open("demo.txt", "x")
B) f = open("demo.txt", "a")
C) f = open("demo.txt", "w")
D) f = open("demo.txt", "r")
您的答案:A  正确率:100%

10、(单选)假设test.txt文件的内容是:
aaaa
bbbb
cccc
以下代码的输出结果是

f = open("test.txt", "r")
print(f.read(3))
f.close()

(本题分数:3)
A) cccc
B) aaa
C) aaaa
D) 程序报错
您的答案:B  正确率:100%

11、(单选)以下文件的打开方式,能对文件进行写操作的是。(本题分数:3)
A) f = open("demo.txt", "w+")
B) f = open("demo.txt", "r+")
C) f = open("demo.txt", "x+")
D) 以上都可以
您的答案:D  正确率:100%

12、(单选)执行下列程序,文件中保存的内容为

file=open('test.txt', 'wt+')
file.write('hello SCUT')
file.close()
file=open('test.txt', 'wt+')
file.write('hello world')
file.close()

(本题分数:3)
A) hello SCUT hello world
B) hello SCUT world
C) hello world
D) hello SCUThello world
您的答案:C  正确率:100%

13、(单选)关于数据组织的维度,哪个选项的描述是错误的?(本题分数:3)
A) 数据组织存在维度,字典类型用于表示一维和二维数据
B) 一维数据采用线性方式组织,对应于数学中的数组和集合等概念
C) 二维数据采用表格方式组织,对应于数学中的矩阵
D) 高维数据由键值对类型的数据构成,采用对象方式组织

【解析】字典用于表示高维数据,一般不用来表示一二维数据
您的答案:A  正确率:100%

14、(单选)关于CSV文件的描述,哪个选项的描述是错误的?(本题分数:3)
A) CSV文件格式是一种通用的、相对简单的文件格式,应用于程序之间转移表格数据
B) 整个CSV文件是一个二维数据
C) CSV文件的每一行是一维数据,可以使用Python中的列表类型表示
D) CSV文件通过多种编码表示字符

【解析】一般来说,CSV文件都是文本文件,由相同编码字符组成
您的答案:D  正确率:100%

15、(单选)给定列表ls = [1, 2, 3, "1", "2", "3"],其元素包含2种数据类型,哪个选项是列表ls的数据组织维度?(本题分数:3)
A) 多维数据
B) 高维数据
C) 二维数据
D) 一维数据

【解析】列表元素如果都是列表,其可能表示二维数据,例如:[[1,2], [3,4], [5,6]]。如果列表元素不都是列表,则它表示一维数据
您的答案:D  正确率:100%

16、(单选)下列不属于CSV格式应用的基本规则的是(  )(本题分数:3)
A) 纯文本格式,通过多个编码表示字符
B) 以行为单位,开头不留空行,行之间没有空行
C) 以逗号分隔每列数据,列数据为空也要保留逗号
D) 可以包含或不包含列名
您的答案:A  正确率:100%

17、(单选)下列对CSV格式存储的文件的阐述表达不正确的是( )(本题分数:3)
A) CSV格式存储的文件一般采用.csv为扩展名
B) CSV存储文件可以通过windows平台上的记事本或微软Office Excel打开
C) CSV文件的每一行是一维数据
D) 整个CSV文件是一个二维数据,由表示每一列的列表类型作为元素
您的答案:D  正确率:100%

18、(单选)为正确实现逐行读取CSV数据并打印输出,需要修改的代码为

① fo=open('test.csv', 'r')
② ls=[]
③ for line in fo:
④    line=line.replace('\n','')
⑤    ls=line.split(',')
⑥    lns=''
⑦    for s in ls:
⑧       lns += '{}\t'.format(s)
⑨ print(lns)
⑩ fo.close()

(本题分数:3)
A) ④
B) ⑤
C) ⑧
D) ⑨
您的答案:D  正确率:100%

19、(单选)以下程序从CSV格式的文件中读入数据,将由每行数据组成的列表写入ls中,空白处的代码是:

fo=open("demo.csv", "r")
ls=[]
for line in fo:
    ls.append(_____)
fo.close()

(本题分数:3)
A) line
B) line.split()
C) line.split(",")
D) line[0:-1].split(",")
您的答案:D  正确率:100%

20、(单选)以下关于Python内置库、标准库和第三方库的描述,正确的是:(本题分数:3)
A) 第三方库不需要单独安装就可以使用
B) 内置库里的函数不需要import就可以调用
C) 标准库跟第三方库发布方法一样,是跟Python安装包一起发布的
D) 第三方库有三种安装方式,最常用的是自定义安装
您的答案:B  正确率:100%

21、(程序填空)以下程序导入CSV格式数据到列表。

fo = open("sample.csv", "r")
ls = []
for (1):
    (2)  #用空字符串("")替换每行最后的换行符("\n"),
    (3)  #将每行用逗号分割的元素添加到列表中
fo.close()

(本题分数:8)

【参考答案】
(1)line in fo 或者 line in fo.readlines()
(2)line = line.replace("\n","")
(3)ls.append(line.split(","))
评分标准:
1、错一空扣30分

22、(程序填空)以下程序将列表ls中的值写入CSV文件。

fw = open("sample.csv", "w")
ls = [['城市', '环比', '同比', '定基'], ['北京', '101.5', '120.7', '121.4'], ['上海', '101.2', '127.3', '127.8'], ['广州', '101.3', '119.4', '120'], ['深圳', '102', '140.9', '145.5'], ['沈阳', '100.1', '101.4', '101.6']]
for (1):    #循环遍历列表
    (2)  # 将ls的一个元素(也是一个列表),用逗号分割,以回车"\n"结束,写入文件
(3) # 关闭文件

(本题分数:8)

【参考答案】
(1)row in ls
(2)fw.write(",".join(row)+"\n")
(3)fw.close()
评分标准:
1、空(1)和(2)中的row可以是自定义的其他变量,只要在空(1)和空(2)中保持一致,不扣分

23、(写运行结果)下列代码的运行结果是什么?

f = open('test.txt','w')
f.write('China\nAmerica\nEngland\n')
f.close()
f = open('test.txt','r')
for line in f.readlines():
    print(line[:-1])
f.close()

(本题分数:8)

【参考答案】
China
America
England
评分标准:3行结果,1行30分,3行全对给满分,少行多行扣30每行

24、(写运行结果)下列代码的运行结果是什么?

s='A,B,C,D'
sls = s.split(',')
print(len(sls))
print(';'.join(sls))

(本题分数:8)

【参考答案】
4
A;B;C;D
评分标准:2行结果,1行50分

25、(写运行结果)下列代码的运行结果是什么?

f = open('test.txt','w')
f.write('China\nAmerica\nEngland\n')
f.close()
f = open('test.txt','r')
for line in f.readlines():
    print(len(line))
f.close()

(本题分数:8)

【参考答案】
6
8
8
评分标准:3行结果,1行30分,按行给分,全对给满分,错一个扣30分,少行多行每行扣30分。