<分区> 分区>
我经常使用下面的两个函数将文件内容读入字符串和将字符串写入文件。据我所知,这些函数在 Python 标准库中不存在,我很好奇为什么。标准库模块shutil具有高级目录和文件操作的函数没有此功能,而且我确信这是一个明确的设计选择,没有将它放在那里。即我想知道以下内容:
- 未将其包含在 Python 标准库中的潜在原因是什么
- 以这种方式处理文件有什么缺点吗(假设一个人知道整个文件内容将被加载到内存中)
函数
def read_file(path):
with open(path) as f:
return f.read()
def write_file(path, data):
with open(path, 'wb') as f:
return f.write(data)
为了澄清,我发现下面的内容更具可读性
write_file('/tmp/test', 'test')
然后是以下两种选择:
open('/tmp/test', 'wb').write('test')
with open('/tmp/test', 'wb') as f:
f.write(data)
