gpt4 book ai didi

Python复制文件但保留原始文件

转载 作者:太空宇宙 更新时间:2023-11-03 14:28:13 24 4
gpt4 key购买 nike

Python 查询。

我想要复制一个名为 randomfile.dat 的文件,并在复制的文件末尾添加一个时间戳。

但是,我也想保留原始文件。所以在我当前的目录(没有移动文件)中我最终会得到:随机文件.datrandomfile.dat.201711241923(或任何时间戳格式......)

有人可以建议吗?我尝试过的任何操作都会导致我丢失原始文件。

最佳答案

打开文件时,您可以使用 "r" 指定打开方式, "w" ,或"a""a"将追加到文件中(r - 读取,w - 写入)。

所以:

with open("randomfile.dat", "a") as file:
file.write("some timestamp")

或者,如果您想保留此原始文件并制作副本,那么您需要打开此文件,复制它,然后打开一个新文件并写入新文件

# empty list to store contents from reading file
file_contents = []
# open file you wish to read
with open('randomfile.dat', 'r') as file:
for line in file:
file_contents.append(line)

# open new file to be written to
with open('newfile.txt', 'w') as newfile:
for element in file_contents:
newfile.write(element)
newfile.write("some timestamp")

任何换行符 (\n) 都将被读取器保留,并且它本质上是逐行读取文件。然后逐行写入一个新文件。循环结束后,添加时间戳,以便它写入文件的最底部。

<小时/>

编辑:刚刚意识到 OP 想做一些稍微不同的事情。这仍然有效,但您需要打开附加时间戳的新文件:

import datetime
datestring = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
with open('newfile' + datestring + '.txt', 'w') as newfile:
for element in file_contents:
newfile.write(element)
<小时/>

但正如其他人提到的,您最好使用一个模块来实现此目的。

关于Python复制文件但保留原始文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47479033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com