我正在使用pathlib库来处理我的脚本中的 I/O。我读了一个带有路径的文件:
PosixPath('input/ADE/data_f34.dat')
父文件夹input/
是固定的,但子文件夹 ( ADE
) 和文件名都不是固定的,即它们随着每次迭代而改变。我需要一个将军来存储一个具有相同名称的新文件到路径:
PosixPath('output/ADE/data_f34.dat')
即,尊重子文件夹和文件的名称,但更改input/
为output/
. 该output
文件夹始终存在,但我不知道子文件夹是否output/ADE/
存在,所以如果不存在,我需要创建。如果已经存在同名文件,我可以简单地覆盖它。
处理这个问题的正确方法是什么pathlib
?
这是你要找的吗?
import pathlib
src = pathlib.PosixPath('input/ADE/data_f34.dat')
dst = pathlib.Path('output', *src.parts[1:])
dst.parent.mkdir(parents=True, exist_ok=True)
with open(dst, 'w') as d, open(src) as s:
d.write(s.read())
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句