75. 按照源程序文件方式运行下面程序段后的输出结果是( ) import string f=open(r'D:\user\t.dat','wb+') s=string.digits+string.ascii_uppercase+string.ascii_lowercase sb=s.encode() f.write(sb) f.seek(-40,1) print(f.tell(),end=',') f.seek(-10,1) print(f.tell()) f.close() A. 22,12 B. 21,11 C. 21,12 D. 22,13
时间: 2024-03-29 11:37:10 浏览: 55
答案是 C。
程序段执行过程如下:
1. 打开文件 t.dat,并以二进制写入和读取方式打开。
2. 将数字和大小写字母拼接成字符串 s。
3. 将字符串 s 转换为 bytes 类型,赋值给 sb。
4. 将 sb 写入文件。
5. 使用 seek(-40,1) 方法将文件指针从当前位置向前移动 40 个字节。
6. 使用 tell() 方法获取当前的文件指针位置,输出 21。
7. 使用 seek(-10,1) 方法将文件指针从当前位置向前移动 10 个字节。
8. 使用 tell() 方法获取当前的文件指针位置,输出 12。
9. 关闭文件。
因此,输出结果为:21,12。选项 C 正确。
相关问题
74. 按照源程序文件方式运行下面程序段后的输出结果是( ) import string f=open(r'D:\user\t.dat','wb+') s=string.digits+string.ascii_uppercase+string.ascii_lowercase sb=s.encode() f.write(sb) print(f.tell(),end=',') f.seek(-5,2) t=f.read() print(t,end=',') print(f.tell()) f.close() A. 0,b'vwxyz',62 B. 0,'vwxyz',62 C. 62,b'vwxyz',62 D. 62,'vwxyz',62
答案是 A。
程序段执行过程如下:
1. 打开文件 t.dat,并以二进制写入和读取方式打开。
2. 将数字和大小写字母拼接成字符串 s。
3. 将字符串 s 转换为 bytes 类型,赋值给 sb。
4. 将 sb 写入文件。
5. 使用 tell() 方法获取当前的文件指针位置,输出 62。
6. 使用 seek(-5,2) 方法将文件指针移动到倒数第 5 个字节处。
7. 使用 read() 方法读取剩余的所有内容,即 b'vwxyz'。
8. 输出读取的内容,即 b'vwxyz',以及当前的文件指针位置,即 62。
9. 关闭文件。
因此,输出结果为:0,b'vwxyz',62。选项 A 正确。
73. 按照源程序文件方式运行下面程序段后的输出结果是( ) import string f=open(r'D:\user\t.txt','w+') f.write(string.digits+'\n'+string.ascii_uppercase+'\n'+string.ascii_lowercase) print(f.tell(),end=',') f.seek(0) s=f.read(1) print(f.tell(),end=',') t=f.readline() print(f.tell(),end=',') print(len(s+t)) f.close() A. 65,1,12,12 B. 66,1,12,11 C. 66,1,12,12 D. 65,1,12,11
答案是 B。
程序段执行过程如下:
1. 打开文件 t.txt,并以写入和读取方式打开。
2. 将数字和大小写字母分别写入文件,并在每一行末尾添加换行符。
3. 使用 tell() 方法获取当前的文件指针位置,输出 66。
4. 使用 seek(0) 方法将文件指针移动到开头。
5. 使用 read(1) 方法读取一个字符,指针位置变为 1,输出 1。
6. 使用 readline() 方法读取一行文本,指针位置变为 12,输出 12。
7. 计算读取的字符数,即 1+11=12,输出 12。
8. 关闭文件。
因此,输出结果为:66,1,12,11。选项 B 正确。
阅读全文