Python语言程序设计(北京理工大学)第七周_Python Programming week07

1. 以下选项对文件描述错误的是:
‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬A. 文件是数据的集合和抽象
B. 文件可以包含任何内容
C. 文件是程序的集合和抽象
D. 文件是存储在辅助存储器上的数据序列
函数或类是程序的集合和抽象,文件不是。

2. Python对文件操作采用的统一步骤是:
‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬A. 打开—读取—写入—关闭
B. 操作—读取—写入
C. 打开—读写—写入
D. 打开—操作—关闭
打开—操作—关闭  是一个统一步骤,其中,关闭可以省略。

3. 对于Python文件,以下描述正确的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬
A. 同一个文件可以既采用文本方式打开,也可以采用二进制方式打开
B. 当文件以二进制文件方式打开时,读取按照字符串方式
C. 当文件以文本方式打开时,读取按照字节流方式
D. 根据不同类型的文件,打开方式只能是文本或者二进制中的一种
文件就在那里,二进制或文本方式打开只是对其不同的程序理解。

4. 以下选项不是Python文件读操作的是:
‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬A. readtext()
B. read()
C. readline()
D. readlines()
没有readtext()方法

5. 关于数据组织的维度,哪个选项的描述是错误的?
‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬A. 高维数据由键值对类型的数据构成,采用对象方式组织
B. 一维数据采用线性方式组织,对应于数学中的数组和集合等概念
C. 二维数据采用表格方式组织,对应于数学中的矩阵
D. 数据组织存在维度,字典类型用于表示一维和二维数据
字典用于表示高维数据,一般不用来表示一二维数据。

6. 关于CSV文件的描述,哪个选项的描述是错误的?
‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬A. CSV文件通过多种编码表示字符
B. CSV文件格式是一种通用的、相对简单的文件格式,应用于程序之间转移表格数据
C. 整个CSV文件是一个二维数据
D. CSV文件的每一行是一维数据,可以使用Python中的列表类型表示
一般来说,CSV文件都是文本文件,由相同编码字符组成。

7. 关于Python文件的‘+’打开模式,哪个选项的描述是正确的?
‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬A. 追加写模式
B. 与r/w/a/x一同使用,在原功能基础上增加同时读写功能
C. 覆盖写模式
D. 只读模式
'+'打开模式的精髓在于它能够同时赋予文件的读写权限。

8. 给定列表ls = [1, 2, 3, "1", "2", "3"],其元素包含2种数据类型,哪个选项是列表ls的数据组织维度?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬
A. 一维数据
B. 高维数据
C. 二维数据
D. 多维数据
列表元素如果都是列表,其可能表示二维数据,例如:[[1,2], [3,4], [5,6]]。
如果列表元素不都是的将列表,则它表示一维数据。

9. 关于文件关闭的close()方法,哪个选项的描述是正确的?
‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬A. 文件处理后可以不用close()方法关闭文件,程序退出时会默认关闭
B. 文件处理遵循严格的“打开-操作-关闭”模式
C. 文件处理结束之后,一定要用close()方法关闭文件
D. 如果文件是只读方式打开,仅在这种情况下可以不用close()方法关闭文件
打开文件后采用close()关闭文件是一个好习惯。如果不调用close(),当前Python程序完全运行退出时,该文件引用被释放,即程序退出时,相当于调用了close()。

10. 二维列表ls=[[1,2,3], [4,5,6],[7,8,9]],哪个选项能获取其中元素5?
‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬A. ls[1][1]
B. ls[-2][-1]
C. ls[4]
D. ls[-1][-1]
这是二维切片的使用方式。

 

 

 

>>> tf = open("D:/2018/python/f.txt", "rt")
>>> print(tf.readline())
中国是一个伟大的国家!
>>> tf.close()
>>> bf = open("D:/2018/python/f.txt", "rb")
>>> print(bf.readline())
b'\xd6\xd0\xb9\xfa\xca\xc7\xd2\xbb\xb8\xf6\xce\xb0\xb4\xf3\xb5\xc4\xb9\xfa\xbc\xd2\xa3\xa1'
>>> bf.close()
>>> tf = open("D:/2018/python/f.txt", "rt")
>>> print(tf.read())
中国是一个伟大的国家!
>>> tf.close()
>>> tf = open("D:/2018/python/f.txt", "rt")
>>> print(tf.read(2))
中国
>>> tf.close()
>>> tf = open("D:/2018/python/f.txt", "rt")
>>> print(tf.readlines())
['中国是一个伟大的国家!']
>>> tf.close()
fname = input("请输入要打开的文件名:")
fo = open(fname, "r")
txt = fo.read() # 一次读入,统一处理
# 对全文txt进行处理
print(txt)
fo.close()

fname = input("请输入要打开的文件名:")
fo = open(fname, "r")
txt = fo.read(2)    # 按数量读入,逐步处理
while txt != "":
    print(txt, end="_") # 对txt进行处理
    txt = fo.read(2)
fo.close()

fname = input("请输入要打开的文件名:")
fo = open(fname, "r")
for line in fo.readlines(): # 一次读入,分行处理
    print(line)
fo.close()

fname = input("请输入要打开的文件名:")
fo = open(fname, "r")
for line in fo: # 分行读入,逐行处理
    print(line)
fo.close()
>>> tf = open("D:/2018/python/f.txt", "rt")
>>> print(tf.read())
中国是一个伟大的国家!
>>> tf.close()
>>> tf = open("D:/2018/python/f.txt", "at")
>>> tf.write("中国是一个伟大的国家!")
11
>>> ls = ["中国", "法国", "美国"]
>>> tf.writelines(ls)
>>> tf.close()
>>> tf = open("D:/2018/python/f.txt", "rt")
>>> print(tf.read())
中国是一个伟大的国家!中国是一个伟大的国家!中国法国美国
>>> tf.close()
fo = open("output.txt", "w+")
ls = ["中国", "法国", "美国"]
fo.writelines(ls)
fo.seek(0)
for line in fo:
    print(line)
fo.close()
>>> line = "1,2,3"
>>> ls = line.split(",")
>>> ls
['1', '2', '3']
>>> ls = list(map(eval,ls))
>>> ls
[1, 2, 3]
>>> fname = "1.txt"
>>> f = open(fname, encoding="utf-8")
>>> txt = f.read()
>>> ls = txt.split()
>>> print(ls)
['中国', '美国', '日本', '德国', '法国', '英国', '意大利']
>>> f.close()
>>> ls = ['1', '2', '3']
>>> ls
['1', '2', '3']
>>> ' '.join(ls)
'1 2 3'
>>> line = "1,2,3"
>>> ls = []
>>> ls.append( line.split(",") )
>>> ls
[['1', '2', '3']]
# 二维列表的遍历
>>> ls = [['深圳','102.0','140.0','145.5'], ['沈阳','100.0','101.4','101.6']]
>>> for i in range(len(ls)):
	for j in range(len(ls[0])):
		print(ls[i][j], end=" ")
	print()

深圳 102.0 140.0 145.5 
沈阳 100.0 101.4 101.6
>>> ls = [['深圳','102.0','140.0','145.5'], ['沈阳','100.0','101.4','101.6']]
>>> i = 0; j = 0
>>> for row in ls:
	for column in row:
		print(ls[i][j], end=" ")
		j += 1
	i += 1; j = 0
	print()

深圳 102.0 140.0 145.5 
沈阳 100.0 101.4 101.6

 

你可能感兴趣的:(notes,course,assignment)