每次运行以下程序时,如何创建新的文本文件?我想每5秒钟收集一次数据,但是我不想覆盖第一个文本文件。我也使用time.sleep(5)函数。

fobj_out = open("Tabelle.txt", "w")
fobj_out.write("Orte chron.: [Höhe in m, Temp. in °C, rel. Feuchte in %, Niederschlag in mm, Sonnenschein in %]\n")

for key in sorted(unserdictionary.iterkeys()):
    print("%s: %s" % (key, unserdictionary[key]))
    fobj_out.write("%s: %s\n" % (key, unserdictionary[key]))
fobj_out.close


有没有简单的方法?

最佳答案

您可以获取当前时间,并将其添加到文件名中。

from time import gmtime, strftime
actual_time = strftime("%Y-%m-%d %H-%M-%S", gmtime())

fobj_out = open("Tabelle - " + str(actual_time) + ".txt", "w")
fobj_out.write("Orte chron.: [Höhe in m, Temp. in °C, rel. Feuchte in %, Niederschlag in mm, Sonnenschein in %]\n")

for key in sorted(unserdictionary.iterkeys()):
    print("%s: %s" % (key, unserdictionary[key]))
    fobj_out.write("%s: %s\n" % (key, unserdictionary[key]))
fobj_out.close


您将获得以下输出:

Tabelle - 2015-01-01 21-15-13.txt
Tabelle - 2015-01-01 21-20-13.txt

10-07 19:11
查看更多