第五章 文件 共80题
1.在Python语言中,写文件的操作是_√√
O write
O writeall
O seek
O writetext
答案:选a
Python语言中写文件的操作方法:
f.write(s):向文件写入一个字符串或字节流。
f.writelines(lines):将一个元素为字符串的列表整体写入文件。
2.以下对Python文件处理的描述中,错误的是_√×
O Python通过解释器内置的open()函数打开一个文件
O Python能够以文本和二进制两种方式处理文件
O当文件以文本方式打开时,读写按照字节流方式
O文件使用结束后可以用close()方法关闭,释放文件的使用授权
答案:选c
当文件以文本方式打开时,读写按照字符串方式;
当文件以二进制方式打开时,读写按照字节流方式。
3.以下关于Python二维数据的描述中,错误的是_××
O一种通用的二维数据存储形式是CSV格式
O二维数据由多条一维数据构成,可以看作一维数据的组合形式
O表格数据属于二维数据,由整数索引的数据构成
O CSV格式每行表示一个一维数据,用英文半角逗号分隔
答案:选c
二维数据,也称表格数据,由关联关系数据构成,采用二维表格方式组织,对应于数学中的矩阵,常见的表格属于二维数据。
4.在Python语言中,读入CSV文件保存的二维数据,按特定分隔符抽取信息,最可能用到的函数是×√
O format()
O join()
O replace()
O split()
答案:选d
split()通过指定分隔符对字符串进行切片。
join()方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
replace()方法把字符串中的old(旧字符串)替换成new(新字符串)。
format()方法用于解决字符串和变量同时输出的格式安排问题。
csv全称“Comma-Separated Values”,是一种逗号分隔值格式的文件,是一种用来存储数据的纯文本格式文件。
5.以下代码执行后,book.txt文件的内容是______。××☆
fo = open(“book.txt”,“w”)
ls = [‘book’,‘23’,‘201009’,‘20’]
fo.write(str(ls))
fo.close()
O book, 23, 201009, 20
O [‘book’ ,’ 23’,'201009’,‘20’ ]
O [book, 23, 201009, 20]
O book2320100920
答案:选b
str(x):将x转换为等值的字符串类型。str(ls)先把列表ls转换成一个字符串
fo.write(s):向文件写入一个字符串或字节流。字符串进行写入的时候又变回一个列表。
代码执行后的输出结果为列表[‘book’,‘23’,‘201009’,‘20’]。
6.以下关于Python文件打开模式的描述中,错误的是_√×
O只读模式r
O覆盖写模式w
O追加写模式a
O创建写模式n
答案:选d
创建写模式x,文件不存在则创建,存在则返回异常FileExistsError。
7.以下关于CSV文件的描述中,错误的是_√×
O CSV文件可以保存一维数据或二维数据
O CSV文件的每一行是一维数据,可以使用Python的列表类型表示
O CSV格式是一种通用的文件格式,主要用于不同程序之间的数据交换
O CSV文件只能采用Unicode编码表示字符
答案:选d
逗号分隔的存储格式叫作CSV格式(逗号分隔值),
CSV是一种通用的、相对简单的文件格式,用途广泛,主要用于不同程序之间的数据交换;
CSV文件不需要特定的字符编码;
CSV文件的每一行是一维数据,整个CSV文件是一个二维数据;
一维数据和二维数据都可以使用CSV格式保存成CSV文件。
8.给定列表ls = [1, 2, 3,“1”,“2",“3”],其元素包含2种数据类型,列表ls的数据组织维度是√√
O二维数据
O 一维数据.
O多维数据
O高维数据
答案:选b
一维数据由对等关系的有序或无序数据构成,采用线性方式组织,对应于数学中数组的概念。一维数据十分常见,任何表现为序列或集合的内容都可以看作是一维数据。
9.在Python语言 中,使用open()打开一个Windows操作系统D盘下文件,路径名错误的是××
O D: \PythonTest\a. txt
O D: \PythonTest\a. txt
O D:/PythonTest/a. txt
O D:// PythonTest//a. txt
答案:选a
打开并关闭文件的操作,需要文件的路径名,
由于"“是字符串中的转义符,所以表示路径时,使用”\“或”/“代替”"。
\a反斜杠后面带东西,会被识别为转义字符
10.在Python语言中,将二维数据写入CSV文件,最可能使用的函数是_×√
O exists()
O split()
O strip()
O join()
答案:选d
join()方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
CSV文件是用逗号分割的,用join加到字符之间很方便
二维数据存储为CSV格式,需要将二维列表对象写入CSV格式文件以及将CSV格式读入成二维列表对象。
二维列表对象输出为CSV格式文件方法采用遍历循环和字符串的join()方法相结合。实例如下:
#ls代表二维列表,此处省略
f = open(“cpi.csv”,“w”)
for row in ls:
f.write(“,”.join(row)+“\n”)
f.close()
11.以下关于文件的描述中,错误的是√√
O使用read()可以从文件中读入全部文本
O可以使用open()打开文件,用close()关闭文件
O文件是存储在磁盘上的数据,也是序列的集合
O使用readline()可以从文件中读入一行文本
答案:选c
文件是存储在辅助存储器上的一组数据序列,可以包含任何数据内容。
概念上,文件是数据的集合和抽象。
12.以下关于文件的描述中,错误的是××☆
O文件打开后,可以用seek ()控制对文件内容的读写位置
O采用readlines()可以读入文件中的全部文本,返回一个列表
O使用open()打开文件时,必须要用r或w指定打开方式,不能省略
O如果没有采用close()关闭文件,Python程序退出时文件将被自动关闭
答案:选c
open()函数总结:
Python通过open()函数打开一个文件,并返回一个操作这个文件的变量,函数语法:
<变量名> = open(<文件路径及文件名>,<打开模式>)
open()函数有两个参数:文件名和打开模式。
打开模式用于控制使用何种方式打开文件,open()函数提供7中基本的打开模式:
r:只读模式,如果文件不存在,返回异常FileNotFoundError,默认值
w:覆盖写模式,文件不存在则创建,存在则完全覆盖原文件
x:创建写模式,文件不存在则创建,存在则返回异常FileExistsError
a:追加写模式,文件不存在则创建,存在则在原文件最后追加内容
b:二进制文件模式
t:文本文件模式,默认值
+:与r/w/x/a一同使用,在原功能基础上增加读写功能
13.以下不属于Python文件操作方法的是√√
O split
O write
O writelines
O readline
答案:选a
split()方法是常用的字符串处理方法,不是文件操作方法。
Python文件操作方法总结:
f.read(size):从文件中读入整个文件内容。参数可选,如果给出,读入前size长度的字符串或字节流。
f.readline(size):从文件中读入一行内容。参数可选,如果给出,读入该行前size长度的字符串或字节流。
f.readlines(hint):从文件中读入所有行,以每行为元素形成一个列表。参数可选,如果给出,读入hint行。
f.seek(offset):改变当前文件操作指针的位置,offset的值:0为文件开头;1为当前位置;2为文件结尾。
f.write(s):向文件写入一个字符串或字节流。
f.writelines(lines):将一个元素为字符串的列表整体写入文件。
14.以下关于数据组织的描述中,错误的是_√√
O更高维数据组织由键值对类型的数据构成,可以用Python字典类型表示
O 一维数据采用线性方式组织,可以用Python集合或列表类型表示
O二维数据采用表格方式组织,可以用Python列表类型表示
O字典类型仅用于表示一维和二维数据
答案:选d
一维、二维数据和高维数据总结:
1、一维数据由对等关系的有序或无序数据构成,采用线性方式组织,对应于数学中数组的概念。
2、二维数据,也称表格数据,由关联关系数据构成,采用二维表格方式组织,对应于数学中的矩阵,常见的表格都属于二维数据。
3、高维数据由键值对类型的数据构成,采用对象方式组织,可以多层嵌套。高维数据相比一维和二维数据能表达更加灵活和复杂的数据关系,可以用字典类型表示。
15.文件exam.txt与以下代码在同一目录下,其内容是一段文本:bigBen,以下代码的输出结果是______。×
f = open(“exam.txt”)
print(f)
f.close()
O bigBen
O exam txt
O <_ io. TextIOWrapper …>
O exam
答案:选c
open()方法的作用是打开一个文件,整个代码未对文件exam.txt进行读写操作,就直接关闭了。所以f就是打开文件的一个操作,运行后代码输出的结果是:
<_io.TextIOWrapper name=‘book.txt’ mode=‘r’ encoding=‘cp936’>。
16.不属于Python文件读操作的是_√√
O readtext
O readline
O readall
O read
答案:选a
Python文件读操作的方法:
f.read(size):从文件中读入整个文件内容。参数可选,如果给出,读入前size长度的字符串或字节流。
f.readline(size):从文件中读入一行内容。参数可选,如果给出,读入该行前size长度的字符串或字节流。
f.readlines(hint):从文件中读入所有行,以每行为元素形成一个列表。参数可选,如果给出,读入hint行。
f.seek(offset):改变当前文件操作指针的位置,offset的值:0为文件开头;1为当前位置;2为文件结尾。
17.文件book.txt在当前代码所在目录内,其内容是一段文本:book,以下代码的输出结果是______。×√
txt = open(“book.txt”, “r”)
print(txt)
txt.close()
O非其他答案
O book. txt
O txt
O book
答案:选a
open()方法的作用是打开一个文件,而所给的代码未对文件book.txt进行读写操作,直接关闭,运行后输出<_io.TextIOWrapper name=‘book.txt’ mode=‘r’ encoding=‘cp936’>。
txt是打开操作
18.假设city.csv文件内容如下______。×√
巴哈马,巴林,孟加拉国,巴巴多斯
白俄罗斯,比利时,伯利兹
以下代码的输出结果是:
f = open(“city.csv”, “r”)
ls = f.read().split(“,”)
f.close()
print(ls)
O [巴哈马,巴林,孟加拉国,巴巴多斯,白俄罗斯,比利时,伯利兹’]
O [’巴哈马’,’巴林’,’孟加拉国’,’巴巴多斯’,’白俄罗斯’,’比利时’,’伯利兹’]
O [‘巴哈马’,’巴林’,’孟加拉国’,’巴巴多斯\n白俄罗斯’,’比利时’,’伯利兹’]
O [’巴哈马’,’巴林’,’孟加拉国’,’巴巴多斯’,’\n’, ’白俄罗斯’,’比利时’,’伯利兹’]
答案:选c
f.read(size):从文件中读入整个文件内容。参数可选,如果给出,读入前size长度的字符串或字节流。
split(str,num)通过指定分隔符对字符串进行切片,如果参数num有指定值,则仅分隔num个子字符串。
f.read().split(“,”):从文件中读入整个文件内容,并以逗号分隔。原文的第一行后有一个换行符"\n",所以读入文件内容时,这里的字符串应为"巴巴多斯\n白俄罗斯"。
运行代码后的输出结果是[‘巴哈马’, ‘巴林’, ‘孟加拉国’, ‘巴巴多斯\n白俄罗斯’, ‘比利时’, ‘伯利兹’]。
巴巴多斯和白俄罗斯之间,没有逗号,不能用逗号分开,而是有一个换行符。
19.(和第5题对比)以下代码的输出结果是______。××
fo = open(“book.txt”,“w”)
ls = [‘book’,‘23’,‘201009’,‘20’]
fo.writelines(ls)
fo.close()
O [book, 23, 201009, 20]
O book, 23, 201009, 20
O book2320100920
O [‘book’ ,’ 23’,'201009’,‘20’ ]
答案:选c
fo.writelines(lines)方法的含义是将一个元素为字符串的列表整体写入文件。
代码运行后的输出结果是book2320100920。
20.在读写文件之前,需要打开文件使用的函数是√√
O open
O fopen
O file
O CFi1e
答案:选a
Python通过open()函数打开一个文件,并返回一个操作这个文件的变量,语法形式如下:
<变量名>=open(<文件路径及文件名>,<打开模式>)
21.以下关于文件的描述,错误的是_×√
O当文件以二进制方式打开的时候,是按字节流方式读写.
O open()打开文件后,返回一个文件对象,用于后续的文件读写操作
O open()打开一个文件,同时把文件内容载入内存
O write (x)函数要求x必须是字符串类型,不能是int类型
答案:选c
采用二进制方式打开文件,文件被解析成为字节流。
Python通过open()函数打开一个文件,并返回一个操作这个文件的变量。
f.write(s):向文件写入一个字符串或字节流。
Python通过解释器内置的open()函数打开一个文件,并实现该文件与一个变量的关联。
语法格式:<变量名> = open(<文件名/文件路径>[,<打开模式>[,encoding=None]])
使用open函数打开文件后会返回一个文件对象,即<变量名>,利用该变量名可以完成后续文件的读写等操作。
网络解释:
open属于低级IO,返回一个文件描述符,open无缓冲。
fopen是高级IO,返回一个文件指针。fopen有缓冲。
22.给以下程序填空,使得输出到文件a.txt里的内容是’90’,‘87’,‘93’的选项是______。××☆
y = [‘90’, ‘87’, ‘93’]
l = ‘’
with open(“a.txt”,‘w’) as fo:
for z in y:
_______________
fo.write(l.strip(’,‘))
O l+="’{}‘“.format(z)
O l+=”’{}‘".format(z)+’,’
O l=‘,’.join(y)
O l+=‘{}’.format(z)+‘,’
答案:选b
格式化方法.format()用于解决字符串和变量同时输出时的格式安排问题,使用方式如下:
<模板字符串>.format(<逗号分隔的参数>)
其中,模板字符串是一个由字符串和槽组成的字符串,用来控制子串和变量的显示结果。
槽用大括号({})表示,对应format()方法中逗号分隔的参数。
程序中使用strip()方法去掉数据尾部的逗号,所以程序填空处应该重新加上逗号。
所以选项A错误,没加上逗号。
选项C中使用了中文状态下的引号(若将引号修改为英文状态,输出到文件的内容也与题意不符),所以选项C错误。
使用选项D中的代码输出到文件中的内容与题意不符,所以选项D错误。
B选项"‘{}’"、d选项’{}'、d选项的format输出是不带引号的,选项D错误
'90’因为90输出的时候,是要带引号的。
23.以下程序的输出结果是______。××☆
img1 = [12,34,56,78]
img2 = [1,2,3,4,5]
def modi():
img1 = img2
print(img1)
modi()
print(img1)
O [1,2,3,4, 5]
[12, 34, 56, 78]
O [1,2,3,4, 5]
[1,2,3, 4, 5]
O [12, 34, 56, 78]
[12, 34, 56, 78]
O [12, 34, 56, 78]
[1,2,3, 4, 5]
答案:选a
对于列表类型,使用等号无法实现真正的赋值,不能产生新列表。
img1 = img2语句并不是拷贝img2中的元素给变量img1,而是新关联了一个引用,即增加一个别名,img1和img2所指向的是同一套内容,所以调用函数modi()后,输出的img1,指向的是img2的内容,即[1,2,3,4,5]。
在函数外部,img1内容不变,所以输出的是[12,34,56,78]。
调用函数modi(),函数体内进行赋值操作,列表对象的赋值就是简单的对象引用。
函数体内,img1和img2是一样的,他们指向同一片内存,img1不过是img2的别名。因此,函数调用执行后输出[1,2,3,4,5]。然后执行print(img1),此处的img1是外部变量,与函数体内img1不是同一个变量,仍输出[12,34,56,78]。
24.以下关于数据维度的描述,错误的是√√
O二维数据可以看成是多条一维数据的组合形式
O JSON格式可以表示比二维数据还复杂的高维数据
O列表的索引值是大于0小于列表长度的整数
O csv文件既能保存一维数据,也能保存二维数据
答案:选c
列表的索引值由0开始,可以等于0的
JSON格式可以表示比二维数据还复杂的高维数据
25.以下不属于Python的pip工具命令的选项是√√
O install
O -V
O show
O download
答案:选b
pip常用的子命令有:
install、download、uninstall、freeze、list、show、search、wheel、hash、completion、help。
26.以下关于文件的描述,错误的是√√
O open()打开文件之后,文件的内容就被加载到内存中了
O open()函数的参数处理模式’b’表示以二进制数据处理文件
O open函数的参数处理模式’+’ 表示可以对文件进行读和写操作
O fo. readlines()函数是将文件的所有行读入一个列表
答案:选a
‘b’:二进制文件模式。
‘+’:与r/w/x/a一同使用,在原功能基础上增加同时读写功能。
f.readlines(hint=-1):从文件中读入所有行以每行为元素形成一个列表。参数可选,如果给出,读入hint行。
文件读写后要调用close ()函数,才能将文件被保存在磁盘中。
27.以下程序输出到文件text.csv里的结果是______。√√
fo=open(“a.txt”,‘w’)
x=[‘春眠’,‘处处’,‘夜来’]
fo.writelines(x)
fo.close()
O ’春眠’处处’夜来’
O春眠
处处
夜来
O春眠处处夜来
O '春眠’
'处处’
’夜来’
答案:选c
f.writelines(lines):直接将列表类型的各元素连接起来写入文件f。
28.以下方法能返回列表数据类型的选项是√√
O s.split()
O s.strip()
O s.replace()
O s.center()
答案:选a
str.split(sep=None):返回一个列表,由str根据sep被分割的部分构成,省略sep默认以空格分割。
str.strip(chars):从字符串str中去掉在其左侧和右侧chars中列出的字符。
str.replace(old,new):返回字符串str的副本,所有old子串被替换为new。
str.center(width,fillchar):字符串居中函数,fillchar参数可选。
29.以下关于数据维度的描述,正确的是√√
O一维数据可以用列表表示,也可以用字典表示
O JSON格式可以表示具有复杂关系的高维数据
O 一维的列表a里的某个元素是一个一维的列表b,这个列表是二维数据
O采用列表表示一维数据,各个元素的类型必须是相同的
答案:选b
高维数据在Web系统中十分常用,作为当今Internet组织内容的主要方式,高维数据衍生出HTML、XML、JSON等具体数据组织的语法结构。
字典属于高维数据,A项错误;
采用列表表示一维数据时,元素的数据类型可以不同,D项错误;
C项说法片面,列表a还可能是高维的。故答案选B项。
30.以下不属于Python的pip工具命令的选项是√√
O get
O install
O show
O dowmload
答案:选a
pip常用的子命令有:
install、download、uninstall、freeze、list、show、search、wheel、hash、completion、help。
31.在进行CSV文件读写时,最不可能使用的字符串处理方法是×√
O join()
O index()
O strip()
O split()
答案:选b
str.split(sep=None):返回一个列表,由str根据sep被分割的部分构成,省略sep默认以空格分割。
str.strip(chars):从字符串str中去掉在其左侧和右侧chars中列出的字符。
str.join(iter):将iter变量的每一个元素后增加一个str字符串。
这三个方法用来增加字符串中的分隔字符或者去掉指定字符,是在进行CSV文件读写时,可能会使用的处理方法。
32.f=open()可以打开一个文件,关于f的描述错误的是_×√
O f是一种特殊的Python变量,执行print (f)时会报错
O f是文件对象引用,在程序中表示文件
O f. read()可以一次性读入文件全部信息
O执行m=f后,m和f同时表示所打开文件
答案:选a
Python通过open()函数打开一个文件,并返回一个操作这个文件的变量,语法形式如下:
<变量名> = open(<文件路径及文件名>,<打开模式>)
f就是等号左边的变量名。
f=open(),执行print (f)时不会报错
输出的是一种读写的方法:<_io.TextIOWrapper name=‘book.txt’ mode=‘r’ encoding=‘cp936’>
f=open (),f是文件对象的引用,在程序中f代表打开的文件,执行print (f)不会报错。
33.下列函数中,不是Python内置函数的是_××
O abs()
O all()
O perf_counter ()
O format()
答案:选c
perf_counter()不是Python内置函数。
time.perf_counter()函数
perf_counter()是第三方库time的函数,返回当前的计算机系统时间。
连续两次执行计算差值,可以得到计算程序运行时间。
34.安装一个第三方库的命名格式是√√
O pip install<第三方库名>
O pip uninstall<第三方库名>
O pip download<第三方库名>
O pip search<第三方库名>
答案:选a
install:安装
uninstall:卸载
download:下载
search:查找
35.生成一个[1, 99]之间随机整数的函数是×√
O random randint(1, 100)
O random randint(0, 99)
O random. randint(1, 99)
O random. uniform(1, 99)
答案:选c
随机数生成函数总结:
randint(a,b):生成一个[a,b]之间的整数。
uniform(a,b):生成一个[a,b]之间的随机小数。
ramdom():生成一个[0.0,1.0)之间的随机小数。
36.time库的time. time ()函数作用是××
O以数字形式返回当前系统时间
O以字符串形式返回当前系统时间
O以struct_time形式返回当前系统时间
O根据format格式定义返回当前系统时间
答案:选a
使用time.time()获取当前时间戳,返回值为数字形式。
37.以下属于turtle库颜色控制函数的是√√
O seth()
O pensize()
O pencolor(
O right()
答案:选c
pencolor():设置画笔的颜色
pensize():设置画笔宽度
seth():改变画笔绘制方向
right(angle):向右旋转angle角度
38.下列函数中,不是Python内置函数的是××
O close()
O sum()
O exec()
O eval()
答案:选a
close()不是Python内置函数。
exec执行储存在字符串或文件中的 Python 语句,相比于 eval,exec可以执行更复杂的 Python代码。
sum()是Python内置函数,对序列进行求和计算。
sum(iterable[, start])
iterable 可迭代对象,如:列表、元组、集合。
start 指定相加的参数,如果没有设置这个值,默认为0。
39.下载但不安装一个第三方库的命名格式是√√
O pip search<第三方库名>
O pip uninstall<第三方库名>
O pip install<第三方库名>
O pip download<第三方库名>
答案:选d
install:安装
uninstall:卸载
download:下载
search:查找
40.生成一个k比特长度随机整数的函数是√√
O random. shuffle(k)
O random. choice(k)
O random getrandbits(k)
O random sample(k)
答案:选c
choice(seq):从序列类型(例如列表)中随机返回一个元素。
shuffle(seq):将序列类型中元素随机排列,返回打乱后的序列。
getrandbits(k):生成一个k比特长度的随机整数。
sample(pop,k):从pop类型中随机选取k个元素,以列表类型返回。
41.以下关于文件的描述,错误的是√√
O打开文件既要读也要写,应该使用的打开模式参数是’rw+’
O fo.seek ()函数是设置当前文件操作指针的位置
O open()函数的打开模式b’表示以二进制数据处理文件
O open函数的打开模式’a’表示可以对文件进行追加操作
答案:选a
r:只读
w:只写
r+:可读可写,若文件不存在,报错
w+:可读可写,若文件不存在,创建
42.执行以下语句后,文件txt里的内容是______。√√
fo = open(“txt”,‘w’)
x=[‘大学’,’ ‘,‘道德经’,’ ‘,‘易经’]
fo.write(’'.join(x))
fo.close()
O大学 道德经 易经
O大学道德经易经
O’大学’,
'道德经’
’易经’
O’大学’,’道德经’,’易经’
答案:选a
join()方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
空格也是列表x中的元素,所以文件里的内容为"大学 道德经 易经"。
用空格来分割
43.以下方法不是python文件操作的选项是√√
O write()
O open()
O copy()
O seek()
答案:选c
copy()函数用于复制,与文件操作无关。
Python文件操作方法:
f.open():打开文件。
f.write(s):向文件写入一个字符串或字节流。
f.seek(offset):改变当前文件操作指针的位置,offset的值:0为文件开头;1为当前位置;2为文件结尾。
44.关于数据组织的维度,以下选项中描述错误的是××
O CSV文件可以用来存储二维数据
O字典类型可以表示具有复杂关系的高维数据
O列表可以表示一维数据,也可以表示多维数据
O字典和JSON格式都能够表达一维数据
答案:这题四个选项都是对的,题目有问题
高维数据用字典表示,仅利用最基本的二元关系展示数据之间的复杂结构。
JSON格式可以表示高维数据也可以表示一维数据;
Python中的字典形式类似于JSON格式;
列表类型可以表示一维数据,也可以通过多层列表表示二维数据;
CSV文件可以用来存储一维数据或二维数据 。
45.用pyinstaller工具能够对Python源文件所做的操作不包括的选项是×√
O把数据和源代码一起打包
O对源文件打包,并删除生成的临时文件
O生成带有动态链接库的可执行文件
O生成独立的可执行文件
答案:选a
Pyinstaller命令的常用参数:
–clean:清理打包过程中的临时文件
-F,–onefile:在dist文件夹中只生成独立的打包文件
通过PyInstaller模块可以将源程序打包成为可执行文件,并且会自动将依赖的库一并打包, 可以通过设置参数删除生成的临时文件,但是如果程序中对外部数据如图片之类的有调用,就必须自行导入到相应的目录。
46.以下关于文件的描述,错误的是×√
O以文本方式读打开一个文件,读入后能对文件进行写操作
O以文本方式打开一个空文件,追加方式写入文件,参数用’a+’
O以文本方式写打开一个文件,不能对文件进行读操作
O打开文件的参数’+’,表示在原打开模式基础上,可以对文件进行读写
答案:选a
以文本方式读打开一个文件,该文件是只读状态,不能进行写操作。
47.以下语句的执行结果是______。×√☆
with open(‘A.txt’,‘w+’) as fo:
fo.write(‘hello’)
print(fo.read())
O出现读写异常
O读文件的函数没有从文件里读到字符串
O写到文件a. txt里一个’hello’字符串,显示在屏幕上一个’hello’字符串
O写到文件a. txt里一个’hello’字符串
答案:选d
with open(‘a.txt’,‘w+’) as fo:将文件以读写方式打开,并且读写完会自动关闭,不需要用close语句来关闭。
as fo打开文件并命名为fo,fo就等价于是这个文件
fo.write(‘hello’)语句的作用是写到文件a.txt里一个’hello’字符串。
print(fo.read())输出时,文件指标已经指向最末尾了,所以屏幕上没有输出。
48.以下关于数据维度的描述,不正确的是××
O二维数据处理等同于二维列表的操作
O要处理二维数据的每个元素,需要用循环结构处理
O二维数据用CSV文件格式存储,得用二重循环嵌套实现
O CSV文件里是用英文半角逗号来分隔数据元素
答案:选c
逗号分隔的存储格式叫作CSV格式(逗号分隔值),是一种通用的、相对简单的文件格式,用途广泛,主要用于不同程序之间的数据交换;
CSV文件不需要特定的字符编码;
CSV文件的每一行是一维数据,整个CSV文件是一个二维数据;
一维数据和二维数据都可以使用CSV格式保存成CSV文件。
二维数据并不是一定要用二重循环嵌套格式存储,说法太绝对。
49.以下选项不属于Python的pip工具的功能是√√
O打包python源代码
O安装第三方python库
O卸载已经安装了的第三方库
O对第三方库进行基本的维护
答案:选a
Pip工具可以安装第三方python库;
卸载已经安装了的第三方库;
对第三方库进行基本的维护。
打包使用Pyinstaller工具。
50.以下关于文件的描述,错误的是√√
(A) open函数的打开模式’a’ 表示可以对文件进行追加操作
(B) fo. seek ()函数是设置当前文件操作指针的位置
©打开文件时,编码方式是可选参数
(D) open() 函数的打开模式’t’表示以二进制打开文件
答案:选d
打开模式’b’表示以二进制打开文件
t是文本文件
51.以下程序的输出结果是( )√
def maxmin(a=10, b=5, c=2):
return max(a, b, c) + min(a, b, c)
print(maxmin(1, b=10))
A、7
B、6
C、11
D、12
答案: C
题目中定义函数maxmin),使用3个含有默认值的形参,函数返回值为三个值中的最大值加上最小值。调用函数,传入两个实参,一个位置参数传递给a,一个关键字参数传递给b,运行函数比较大小,得到最大值10加上最小值1,所以答案为11。
52.以下程序的输出结果是()×
d={“A”:10, “B”:2, “C”:100, “D”:9, “E”:-10}
s=0
for i in d:
if d[i]> 2:
continue
s += d[i]
print(s)
A、111
B、119
C、121
D、-8
答案: D
程序遍历字典d,变量i依次是"A"、“B”、 “C”、 “D”、 “E”, 内部分支语句对字典d的值进行判断,如果键i对应的值大于2,则不执行后面语句,直接遍历下一个元素,最后循环结束,s=-8。
53.变量Is=[1,2,3,4,5,6,7,8,9],以下执行结果是123456789的选项是( )×
A. print(“join(str(,strspt”(“)“split(”,” “))
B、print(” join(str(s)))
C、print(““.join(s))
D、print(”. joinis(s),split(:)))
答案: A
先将列表Is通过str)函数转化为字符串形式"[1,2,3,4,5,6,7,8,9]“, 然后用strip()方法去除首尾的中括号,得到"1,2,3,4,5,6,7,8,9”, 接下来通过split()方法以逗号切割成列表[1;2;3,4;5,6;7";8’;9],最后使用join()方法拼接。
54.以下程序的输出结果是()√
s =[“seashell”,“gold”,“pink” ,“brown”,“purple”,“tomato”]
print(len(s),min(s),max(s))
A、5 pink brown
B、6 seashell gold
C、6 brown tomato
D、5 purple tomato
答案: C
len()函数返回数据的长度 ; min()函数返回数据的最小值;
max()函数返回数据的最大值。观察数据可以知道len()函数返回的是6,min()函数返回的是"brown", max()函数返回的是"tomato"。
55.补充以下程序,输出随机列表元素的最大值的选项是()√
import random as r
listV= 0
r.seed(100)
for i in range(10):
i= r.randint(100,999)
listV.append(i)
A. print(max(listV))
B、print(listV.max()
C、print(listV.pop())
D、print(listV .reverse())
答案: A
考核列表的操作方法及操作函数,max()函数返回数据的最大值; max()方法不存在; pop()方法随机删除一个元素,并返回; reverse()方法将列表逆序,所以选择A选项。
56.以下关于文件的描述,错误的是( )√
A、open() 函数的打开模式t表示以二进制打开文件
B、打开文件时,编码方式是可选参数
C、fo.seek()函数是设置当前文件操作指针的位置
D、open函数的打开模式’a’表示可以对文件进行追加操作
答案: A
open()函数打开模式有多种,'b代表以二进制形式打开文件,t代表以文本文件形式打开文件,'a’代表可以对文件进行追加操作,打开文件时还可以用encoding参数设置编码,在对文件进行操作的时候,指针可以由seek()方法进行控制。
57.执行以下程序后,文件a.txt中的内容是( )√
fo = open(“a.t”,‘W’)
x= [大学",‘,中学’,’ ,小学]
fo.write(‘n’join(x))
fo.close()
A、大学\n中学\n小学
B、大学中学小学
C、’大学’,’\n’;‘中学’,’\n’,’小学’
D、大学
中学
小学
答案: D
题目中程序将列表x通过join()方法以换行符作连接符拼接,所以得到的字符串为大学In \n中学\n \n小学,写入文件后展示时,会将换行符自动变为换行。
58.以下方法不是python文件操作的选项是()√
A. seek()
B、socket()
C、close()
D、readlines()
答案: B
seek()方法是控制文件操作的指针; socket()方法是用来创建套接字不属于文件操作; close()方法是关闭文件; readlines()方法是用来读取文件内容。
59.以下关于数据组织的维度,以下选项中描述错误的是()√
A. JSON格式能够表达一维数据
B、字典类型可以表示具有复杂关系的高维数据
C、列表只能表示一维数据
D、CSV文件可以用来存储二维数据
答案: C
JSON格式可以表示高维数据也可以表示一维数据;
Python中的字典形式类似于JSON格式;
列表类型可以表示一维数据,也可以通过多层列表表示二维数据;
CSV文件可以用来存储一维数据或二维数据。
60.turtle库的控制顺时针转的函数是()√
A. penup()
B、set()
C、right()
D、pencolor()
答案: C
penup()函数提起画笔,之后移动画笔不会绘制轨迹;
turtle中没有set()函数;
right()函数使画笔的指向沿着顺时针方向旋转一定的角度;
pencolor()函数设置画笔绘制轨迹的颜色。
61.关于以下代码执行结果的描述,正确的选项是()√
chinesetime = {‘夜半:子时;鸡鸣’:'丑时",'平旦:寅时",
'日出’:’卯时’,’食时’:'辰时’,’隅中’:’巳时’,
‘日中’:’午时’,’日跌’:’未时’,’哺时’:‘申时’,
‘日入’:’酋时’,’黄昏’:'戌时’;’人定’:‘亥时’}
time = chinesetime.pop(‘黄昏’;’失败’)
print(chinesetime)
A、程序输出一个字典,其中,键为"黄昏”的值被修改为"失败"
B、程序输出一个字典,其中,键为"黄昏"的键值对被删除
C、程序执行后,time变量的值是{“黄昏”:"戌时"了
D、程序执行后,time变量的值是{“黄昏”:"失败"了
答案: B
字典的pop()方法是寻找字典中是否存在与第一个参数相同的键,存在即删除该键值对,并返回对应的值;不存在就返回第二个参数。题目字典中存在字符串黄昏这个键,所以删除对应键值对,并返回字符串戌时赋值给time.本题选择B选项。
62.关于列表操作函数的描述,正确的选项是( )×
A、Is1=Is2将列表Is2的元素追加到列表Is1
B、ls.insert(x)将x插入 到列表ls的娓
C、min(Is)返回列表ls的最大元素
D、’,’.join(Is)将列表ls的元索用逗号连成一个字符串
答案: D
A选项错误,采用等号是直接将Is2的数据赋值给ls1。
B选项错误,列表的insert()方法必须要有两个参数,第一个参数是插入的位置, 第二个参数是插入的元素。
C选项错误,min()函数返回的是最小值。
D选项正确,join()方法是利用调用自身方法的字符拼接括号内参数的各个元素,最后返回拼接过后的字符串。本题选择D选项。
63.以下代码的执行结果是()√
Is= [12, 34, 56, 78]
It=[1,2, 3,4, 5]
def func():
Is=It
print(Is)
func()
print(Is)
A、
[1,2,3, 4,5]
[12, 34, 56, 78]
B、
[1,2,3,4, 5]
[1,2,3,4, 5]
C、
[12, 34, 56, 78]
[12, 34, 56, 78]
D、
[12, 34, 56, 78]
[1,2,3,4,5]
答案: A
观察本题程序,在打印输出Is前调用了函数,函数内程序先将lt赋值给Is,然后输出s,所以函数内部的输出数据应该是[1,2,3,4,5]。所以排除C、D两个选项。因为在函数内部采用了赋值符号,所以函数内部的Is相当于是局部变量,那么外界全局变量的ls便不会被局部变量所影响,最后输出[12,34,56,78]。
64.关于Python列表及数据维度的描述,错误的选项是()√
A、列表索值的范围是大于0小于列表长度的整数
B、列表能表示多维数据
C、二维数据可以看成是多个一维数据的组合
D、CSV格式文件既能保存一维数据,也能保存二维数据
答案: A
列表可以正向索引,也可以逆向索引。
65.用于设置画布大小的turtle库函数是( )√
A、turtlesize()
B、shape()
C、getscreen()
D、setup()
答案: D
在Python语言中,turtle库没有turtlesize()函数。 shape()函数用于设置绘图箭头的形状。getscreen()函数返回一个TurtleScreen类的绘图对象,开启绘画。setup()函数打开一个自定义大小和位置的画布。
66.以下代码可能的执行结果是()√
list1 = [河南’, '四川,河北,辽宁]
list2 = [郑州,‘成都",‘石家庄,“长春’,‘济南’]
d={}
for i in range(len(list1)):
d[ist1[i]] = list2[i]
print(d)
A、[‘河南’,'四川’,’河北’,’辽宁’]
B、[(‘河南’,’郑州’),(‘四川’, ‘成都’),(‘河北’,’石家庄’),(‘辽宁’,’长春’)]
C、([‘河南’, “四川’,’河北’,’辽宁’])
D、{‘河北’:’石家庄’,’河南’: '郑州’,’辽宁’: '长春’,'四川’: ‘成都’}
答案: D
观察题目中代码,首先创建了两个列表,然后在循环中向字典中添加数据,以列表list1中的元素作为键,列表list2中的元素为值,且因为是以列表lit1的长度作为循环次数,所以只能生成四个元素的字典,最后得到字典为{河北: '石家庄,河南:郑州”,辽宁:‘长春,四川:‘成都"}。
67.执行后返回列表类型的方法是()√
A、strip()
B、split()
C、replace()
D、lower()
答案: B
strip()方法作用是去除首尾两端字符,返回值是去除后的字符串;
spit()方法作用是根据一个子串切割字符串,返回值是切割后剩下的元素组成列表;
replace()方法作用是替换字符串的字符,返回值是替换后的字符串;
lower()方法作用是将字符串所有的大写字母转化为小写字母,返回值是转化后的字符串。
68.执行以下代码后,a.txt文件里的内容是()×
fo=open(“a.txt”,‘w’)
x=[天";地”;人]
fo.writelines(‘,’.join(x))
fo.close()
A、天,地,人
B、’天’,’地’,’人’
C、天,地,人,
D、’天’,’地’,’人’,
答案: A
观察题目中程序,首先打开文件,然后使用文件的writelines()方法写入数据,数据是列表x通过逗号连接内部所有元素,所以写入文件的字符串为“天,地,人”,因为写入文件不会含有引号,所以文件的内容为:天,地,人。
70.设置图形绘制速度的turtle库函数是()√
A、goto()
B、speed()
C、speedup()
D、getturtle()
答案: B
goto()是移动画笔位置的函数;
speed()是设置画笔移动速度的函数;
在turtle模块中没有speedup()函数和geturtle()函数。本题选择B选项。
71.关于文件的描述,错误的选项是()√
A、readline()函数从文件中读入一行
B、Python程序退出后,拼文件自动关闭,不定需要close()函数
C、open()函数的参数‘r’示对文件进行读操作
D、open()函数的参数’a’示只读文件
答案: D
Python语言open()函数中“a"模式是写模式,文件不存在则创建,存在则在原文件最后追加内容。追加写模式
72.关于数据维度的描述,错误的选项是()√
A、列表只能用来表示一维数据
B、二维数据可以看作多个一维数据的组合形式
C、字典可以示高维数据
D、CSV格式可以存储二维数据,每行使用英文半角逗号分隔各数据
答案: A
Python语言中,列表类型可以表示一维、二维和多维数据。
73.不能返回列表类型的选项是()√
A、s.split()
B、jeba.lcut()
C、jieba.cut()
D、list()
答案: C
split()方法可以根据参数切割字符串并返回列表;
lcut()函数可以根据jieba库的内置词典将参数进行分词并返回列表;
cut()函数会生成一个可迭代的数据类型,在迭代的时候再进行分词;
list()函数将参数转变为列表数据类型。
- 正确的选项是( ) √
d = [(-0.71,0.6,1.0), (0.0,0.06,4.0), (0.71,0.6,8.0)]
for n in d:
print(_________)
填写空格,输出下述内容
-0.71 0.0 0.71
A、‘{}.format(n[0]), end=’ ’
B、‘{}’.format(n[0])
C、‘{}/n’.format(n[0])
D、‘{}\n’.format(n[0])
答案: A
输出的三个数据均为d列表中单个元素的首位,且因为三个参数中间是以空格分隔,那么print()函数就需 要设置end参数等于空格,即end=’ ‘。所以本题选择A选项。
75.turtle库中,绘制圆弧的函数是( )√
A、seth()
B、eclipse()
C、forword()
D、circle()
答案: D
seth()函数是用来调整画笔指向的角度;
tuetle库中无eclipse()函数;
forword()函数是用来移动画笔;
circle()函数是用来绘制圆或者绘制圆弧的。
-
补充完整横线处代码,正确的选项是( )×
以下代码将打印输出所有女生的名字:
d= {“张良”:“男”, “李明明”:“女”, “李华”:“女”, “张丽”:“女”}
for key in d:
if_________== “女”:
print(key)
A、d[key]
B、d.values(key)
C、get(key).value
D、d.value
答案: A
输出所有女生的姓名。因为直接遍历字典相当于遍历字典的键,所以key是姓名,分支语
句中判断性别,所以可以通过字典[键]这种形式取到值,也就是d[key]。 -
关于执行结果的描述,正确的选项是( )×
文件data.csv里的内容如下:
zhang,17,5
wang,10,2
li,19,3
执行以下代码
f= open(‘data.csv’, ‘r’)
print(f.readlines())
f.close()
A、输出三行字符串
B、输出三行列表,每行列表里面有一个字符串元素
C、输出一行字符串,里面包括三个字符串
D、输出一行列表,里面包括三个字符串元素
答案: D
打开文件并输出文件通过readlines()方法读取的数据,readlines()方法读取文件全部行内容,每一行内容形成一个字符串,所有字符串组成一个列表。
78.文件a.txt的内容如×☆
[1,2, 3, 4]
以下代码的执行结果是( )。
f= open(‘a.txt,‘r’)
print(f.read().split(‘,’))
f.close()
A. ‘1’,‘2’,‘3’, ‘4’
B、[1,2,3,4]
C、[’[1’, ‘2’, ‘3’,‘4]’]
D、1,2,3, 4
答案: C
打开文件并将read()方法读取的内容通过split()方法以逗号切割,然后将切割的数据输出。
文件内容是"[1, 2, 3, 4]’,通过逗号切割得到的数据为[[1’, ‘2’, ‘3’,‘4]所以输出为[‘[1’, ‘2’, ‘3’, '4]’]。
79.关于数据维度的描述,错误的选项是( )√
A、一维数据由对等关系的有序或无序数据构成
B、列表只能存储二维数据
C、二维数据可以看成是多个一维数据的组合形式
D、.txt格式文件可以存储一维数据和二维数据
答案: B
列表可以存储一维数据,也可以嵌套列表存储二维数据。
- turtle库中设置画笔宽度的函数是( )√
A、turtlesize()
B、pen()
C、write()
D、width()
答案: D
在turte库中turtlesize()函数返回当或设置笔的属性x或y-stretchfactors和轮廓;
pen()函数用于通过一些键/值对在“pen-dictionary"中返回或设置笔的属性;
write()函数在屏幕上绘制文本;
width()函数设置画笔的宽度。