需10道题轻松掌握Python文件处理 | Python技能树征题

简介: 需10道题轻松掌握Python文件处理 | Python技能树征题1. 第 1 题:文件路径名的处理2. 第 2 题:检测文件是否存在3. 第 3 题:获取指定文件夹下的文件列表4. 第 4 题:文本文件的读写5. 第 5 题:将打印输出到文件中6. 第 6 题:二进制文件的读写7. 第 7 题:压缩文件的读写8. 第 8 题:以固定数据块大小读取文件9. 第 9 题:增加或改变已打开文件的编码方式10. 第 10 题:临时文件与文件夹的创建试题代码地址

0. 前言

所有应用程序都需要处理输入和输出,文件是用于获取输入和保存输出的常用载体,文件可以是文本文档、图片、程序等等,我们就通过 10Python 编程题来掌握解决常见文件处理问题的方法吧!

1. 第 1 题:文件路径名的处理

知识点描述:使用路径名来获取文件名,目录名,绝对路径。

问题描述:有一文件路径如下:“/home/brainiac/Documents/csdn/hello_world.py”,请从以下选项中选出可以获取文件名 “hello_world.py” 的选项:

A.

import os
path = '/home/brainiac/Documents/csdn/hello_world.py'
file_name = os.path.dirname(path)
print(file_name)
1234

B.

import os
path = '/home/brainiac/Documents/csdn/hello_world.py'
file_name = os.path.abspath(path)
print(file_name)
1234

C.

import os
path = '/home/brainiac/Documents/csdn/hello_world.py'
file_name = os.path.basename(path)
print(file_name)
1234

D.

import os
path = '/home/brainiac/Documents/csdn/hello_world.py'
file_name = os.path.splitext(path)[-1]
print(file_name)
1234

正确答案: C

2. 第 2 题:检测文件是否存在

知识点描述:检测指定文件或目录是否存在。

问题描述:请从以下选项中选出可以检测 “/etc/passwd” 文件是否存在的选项:

A.

import os
exist = os.path.exists('etc/passwd')
print(exist)
123

B.

import os
exist = os.path.isdir('etc/passwd')
print(exist)
123

C.

import os
exist = os.path.isdir('/etc/passwd')
print(exist)
123

D.

import os
exist = os.path.isfile('/etc/passwd')
print(exist)
123

正确答案: D

3. 第 3 题:获取指定文件夹下的文件列表

知识点描述:获取文件系统中指定目录下的所有文件列表。

问题描述:获取 “/etc” 目录中所有 python 文件(以 “.py” 作为文件后缀)列表,请从以下选项中选出你认为正确的选项

A.

import ospath = "/usr/lib/python3/dist-packages"names = [name for name in os.listdir(path)]print(names)1234

B.

import ospath = "/usr/lib/python3/dist-packages"names = [name for name in os.listdir(path) if name.endswith('.py')]pri

C.

import ospath = "/usr/lib/python3/dist-packages"names = [name for name in os.listdir(path) if os.path.isfile(name) an

D.

import ospath = "/usr/lib/python3/dist-packages"names = [name for name in os.listdir(path) if name.endswith('*.py')]pri

正确答案: B

4. 第 4 题:文本文件的读写

知识点描述:读写使用不同编码方式的文本文件。

问题描述:假设存在一文件 “text_1.txt”,如何向其中再添加两行新数据,请从以下选项中选出你认为正确的选项:

A.

new_line_1 = "New line 1"new_line_2 = "New line 2"with open('text_1.txt', 'rt') as f:    f.write(new_line_1+'\n')

B.

new_line_1 = "New line 1"new_line_2 = "New line 2"with open('text_1.txt', 'at') as f:    f.write(new_line_1)    f.wri

C.

new_line_1 = "New line 1"new_line_2 = "New line 2"with open('text_1.txt', 'wt') as f:    f.write(new_line_1+'\n')    f.w

D.

new_line_1 = "New line 1"new_line_2 = "New line 2"with open('text_1.txt', 'at') as f:    f.write(new_line_1+'\n')

正确答案: D

5. 第 5 题:将打印输出到文件中

知识点描述:将 print() 函数的输出重定向到指定日志文件中。

问题描述:将当前时间写入日志文件 “log.txt” 中,并记录函数执行结果,请从以下选项中选出你认为正确的答案:

A.

from datetime import datetimedef hello_world(num):    return "Hello world {}!".format(num)for i in range(10):    with

B.

from datetime import datetimedef hello_world(num):    return "Hello world {}!".format(num)for i in range(10):    with

C.

from datetime import datetimedef hello_world(num):    return "Hello world {}!".format(num)for i in range(10):    with op

D.

from datetime import datetimedef hello_world(num):    return "Hello world {}!".format(num)for i in range(10):    with

正确答案: A

6. 第 6 题:二进制文件的读写

知识点描述:读写二进制文件,如图片、声音文件等。

问题描述:已知存在二进制文件 “test.bin”,如何正确向此文件追加写入文本数据,请从以下选项中选出你认为正确的答案:

A.

with open('test.bin', 'at') as f:    text = 'Hello World!\n'    f.write(text)123

B.

with open('test.bin', 'wb') as f:    text = 'Hello World!\n'    f.write(text.encode('utf-8'))123

C.

with open('test.bin', 'ab') as f:    text = 'Hello World!\n'    f.write(text.encode('utf-8'))123

D.

with open('test.bin', 'ab') as f:    text = 'Hello World!\n'    f.write(text)123

正确答案: C

7. 第 7 题:压缩文件的读写

知识点描述:读写 gzip 或 bz2 格式的压缩文件。

问题描述:请从以下选项中选择能够将文本文件 “text.txt” 内容写入压缩文件 “compress.gz” 的程序,且要求压缩程度最佳:

A.

import gziptext = 'text.txt'with gzip.open('compress.gz', 'wt', compresslevel = 9) as f:    f.write(text)1234

B.

import gziptext = 'text.txt'with gzip.open('compress.gz', 'wt', compresslevel = 0) as f:    f.write(text)1234

C.

import gziptext = 'text.txt'with open(text, 'rt') as file:    read_text = file.read()    with gzip.open('compress.gz', '

D.

import gziptext = 'text.txt'with open(text, 'rt') as file:    read_text = file.read()    with gzip.open('compress.gz',

正确答案:C

8. 第 8 题:以固定数据块大小读取文件

知识点描述:以固定长度数据块长度迭代读取文件,而非逐行读取。

问题描述:存在一文件 “test.bin”,编写程序每次读取数据块大小为 16B,直到文件末尾:

A.

from functools import partialRECORD_SIZE = 16with open('test.bin', 'rt') as f:    records = iter(partial(f.read, RECOR

B.

from functools import partialRECORD_SIZE = 16with open('test.bin', 'rb') as f:    records = iter(partial(f.read, RECOR

C.

from functools import partialRECORD_SIZE = 16 * 8with open('test.bin', 'rt') as f:    records = iter(partial(f.read, RECORD_SIZE), b'')    for r in records:        print(r)123456

D.

from functools import partialRECORD_SIZE = 16with open('test.bin', 'rt') as f:    records = iter(partial(f.read, RECO

正确答案:B

9. 第 9 题:增加或改变已打开文件的编码方式

知识点描述:在不关闭已打开文件前提下改变文件的编码方式。

问题描述:如何为一个以二进制模式打开的文件添加 “utf-8” 编码方式,请从以下选项中选出你认为正确的答案:

A.

import urllib.requestimport iowith urllib.request.urlopen('https://blog.csdn.net/LOVEmy134611') as u:    f = io.TextIO

B.

import urllib.requestimport iowith urllib.request.urlopen('https://blog.csdn.net/LOVEmy134611') as u:    f = io.TextIOWr

C.

import urllib.requestimport iowith urllib.request.urlopen('https://blog.csdn.net/LOVEmy134611') as u:    f = io.TextIOW

D.

import urllib.requestimport iowith urllib.request.urlopen('https://blog.csdn.net/LOVEmy134611') as u:    f = io.TextIOW

正确答案:A

10. 第 10 题:临时文件与文件夹的创建

知识点描述:在程序执行时创建临时文件或目录,并在使用后自动销毁。

问题描述:创建一个命名临时文件,向文件中写入 “Hello Python!” 后打印文件名,请从以下选项中选出你认为正确的答案:

A.

from tempfile import NamedTemporaryFilewith NamedTemporaryFile('text.txt', 'wt') as f:    f.write('Hello Python!\n')

B.

from tempfile import TemporaryFilewith TemporaryFile('text.txt', 'wt') as f:    f.write('Hello Python!\n')    print(f.n

C.

from tempfile import NamedTemporaryFilewith NamedTemporaryFile('wt') as f:    f.write('Hello Python!\n')    print(f.n

D.

from tempfile import TemporaryFilewith TemporaryFile('wt') as f:    f.write('Hello Python!\n')    print(f.name)1234

正确答案:C

试题代码地址

https://codechina.csdn.net/LOVEmy134611/python_problem

目录
相关文章
|
1月前
|
自然语言处理 数据处理 Python
python操作和解析ppt文件 | python小知识
本文将带你从零开始,了解PPT解析的工具、工作原理以及常用的基本操作,并提供具体的代码示例和必要的说明【10月更文挑战第4天】
314 60
|
1月前
|
安全 Linux 数据安全/隐私保护
python知识点100篇系列(15)-加密python源代码为pyd文件
【10月更文挑战第5天】为了保护Python源码不被查看,可将其编译成二进制文件(Windows下为.pyd,Linux下为.so)。以Python3.8为例,通过Cython工具,先写好Python代码并加入`# cython: language_level=3`指令,安装easycython库后,使用`easycython *.py`命令编译源文件,最终生成.pyd文件供直接导入使用。
python知识点100篇系列(15)-加密python源代码为pyd文件
|
14天前
|
开发者 Python
Python中__init__.py文件的作用
`__init__.py`文件在Python包管理中扮演着重要角色,通过标识目录为包、初始化包、控制导入行为、支持递归包结构以及定义包的命名空间,`__init__.py`文件为组织和管理Python代码提供了强大支持。理解并正确使用 `__init__.py`文件,可以帮助开发者更好地组织代码,提高代码的可维护性和可读性。
16 2
|
1月前
|
Linux 区块链 Python
Python实用记录(十三):python脚本打包exe文件并运行
这篇文章介绍了如何使用PyInstaller将Python脚本打包成可执行文件(exe),并提供了详细的步骤和注意事项。
51 1
Python实用记录(十三):python脚本打包exe文件并运行
|
30天前
|
Java Python
> python知识点100篇系列(19)-使用python下载文件的几种方式
【10月更文挑战第7天】本文介绍了使用Python下载文件的五种方法,包括使用requests、wget、线程池、urllib3和asyncio模块。每种方法适用于不同的场景,如单文件下载、多文件并发下载等,提供了丰富的选择。
|
30天前
|
数据安全/隐私保护 流计算 开发者
python知识点100篇系列(18)-解析m3u8文件的下载视频
【10月更文挑战第6天】m3u8是苹果公司推出的一种视频播放标准,采用UTF-8编码,主要用于记录视频的网络地址。HLS(Http Live Streaming)是苹果公司提出的一种基于HTTP的流媒体传输协议,通过m3u8索引文件按序访问ts文件,实现音视频播放。本文介绍了如何通过浏览器找到m3u8文件,解析m3u8文件获取ts文件地址,下载ts文件并解密(如有必要),最后使用ffmpeg合并ts文件为mp4文件。
|
1月前
|
JSON 数据格式 Python
Python实用记录(十四):python统计某个单词在TXT/JSON文件中出现的次数
这篇文章介绍了一个Python脚本,用于统计TXT或JSON文件中特定单词的出现次数。它包含两个函数,分别处理文本和JSON文件,并通过命令行参数接收文件路径、目标单词和文件格式。文章还提供了代码逻辑的解释和示例用法。
42 0
Python实用记录(十四):python统计某个单词在TXT/JSON文件中出现的次数
|
1月前
|
Python
Python对PDF文件页面的旋转和切割
Python对PDF文件页面的旋转和切割
|
1月前
|
计算机视觉 Python
Python操作PDF文件
Python操作PDF文件
|
1月前
|
IDE 开发工具 iOS开发
Python编程案例:查找指定文件大小的文件并输出路径
Python编程案例:查找指定文件大小的文件并输出路径