使用datetime作为文件名在python中保存csv文件

时间:2018-03-05 07:51:52

标签: python csv datetime

我有以下代码:

import csv
import requests
from bs4 import BeautifulSoup
import datetime

with open("D:/python/sursa_alimentare.csv", "w+") as f:
        writer = csv.writer(f)
        writer.writerow(["Descriere", "Pret"])`    

因为我经常运行这个,所以我希望使用包含日期时间格式的名称保存csv文件。 任何帮助将不胜感激。谢谢。

3 个答案:

答案 0 :(得分:2)

你必须使用.strftime

filename = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M.csv")

with open(filename, "w+") as f:
    writer = csv.writer(f)
    writer.writerow(["Descriere", "Pret"])` 

这里有一些细节https://www.tutorialspoint.com/python/time_strftime.htm

答案 1 :(得分:1)

避免直接使用datetime.now(),因为这会在文件名中创建:,如果在Windows文件系统上使用,则会失败。而是使用strftime()添加所需的格式:

from datetime import datetime

filename = datetime.now().strftime('sursa_alimentare-%Y-%m-%d-%H-%M.csv')

with open(filename, "w+") as f_output:
        csv_output = csv.writer(f_output)
        csv_output.writerow(["Descriere", "Pret"])

提供如下文件名:

sursa_alimentare-2018-03-05-09-01.csv

答案 2 :(得分:0)

我想这可能会帮助您在文件名中添加日期时间,

import csv
import requests
from bs4 import BeautifulSoup
import datetime

file_name = 'sursa_alimentare-'+str(datetime.datetime.now())+'.csv'
with open(file_name, "w+") as f:
        writer = csv.writer(f)
        writer.writerow(["Descriere", "Pret"])