python to_excel 写入 不覆盖
时间: 2023-05-04 09:04:09 浏览: 94
在 Python 中,我们通常使用 pandas 库的 to_excel() 方法将数据写入 Excel 文件。默认情况下,to_excel() 方法会覆盖已存在的文件。
如果你不想覆盖已存在的文件,可以在写入时使用一个新的文件名。在 to_excel() 方法中,使用参数'path' 或者 'filename' 来指定新的文件名。例如:
```
import pandas as pd
# 创建一个 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 将 DataFrame 写入 Excel,不覆盖已存在的文件
df.to_excel('new_file.xlsx')
```
上面的代码会将 DataFrame 写入名为 'new_file.xlsx' 的 Excel 文件中。如果 'new_file.xlsx' 已经存在,则不会被覆盖,而是会创建一个新的文件 'new_file (1).xlsx'。这个新文件的编号会自动递增,保证文件名的唯一性。
除了使用新的文件名外,我们还可以在文件名后面添加时间戳,这样可以保证写入数据的时间唯一性。例如:
```
import pandas as pd
import time
# 创建一个 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 在文件名后添加时间戳
current_time = time.strftime('%Y%m%d_%H%M%S')
filename = f'new_file_{current_time}.xlsx'
# 将 DataFrame 写入 Excel,不覆盖已存在的文件
df.to_excel(filename)
```
上面的代码会在文件名后面添加当前时间的时间戳,保证写入的 Excel 文件名唯一。这样就可以避免覆盖已经存在的文件。