Python和科学计算认证群组  - 讨论区

标题:请教数据保存问题2

2011年03月25日 星期五 22:56

请教大家如何以系统时间作为文件名来保存实时采集到的数据。这样保存的数据很容易查询

2011年03月25日 星期五 23:03

用datetime.now()获取当前时间,然后调用其strftime方法将时间转换成字符串。

from datetime import datetime

with file(datetime.now().strftime("%Y-%m-%d_%H-%M-%S.txt"), "w") as f:

f.write(... you data .. )

2011年03月25日 星期五 23:08

楼上大牛啊,哈哈

2011年03月25日 星期五 23:14

from datetime import datetime

for k in range(1,10):

    with file(datetime.now().strftime("%Y-%m-%d_%H-%M-%S.txt"), "w") as f:

    f.write(str(k)+'\t'+'\n')

f.close() 

老大辛苦,好像有点问题:  

 f.write(str(k)+'\t'+'\n')

    ^

IndentationError: expected an indented block

2011年03月26日 星期六 00:43

没有正确地缩进吧

from datetime import datetime

for k in range(1,10):

    with file(datetime.now().strftime("%Y-%m-%d_%H-%M-%S.txt"), "w") as f:

          f.write(str(k)+'\t'+'\n')

f.close()

2011年03月30日 星期三 15:09

是缩进问题,谢谢! 但是输出的结果为什么只有一个文件,保存的结果是最后的9,我想要的结果是从1到9分别按时间依次保存下来!

是不是相应数据保存中间间隔时间太短了,请问如何利用 pause 来设定暂停时间为1秒?

2011年03月30日 星期三 16:23

不能用time.sleep(1)吗?

2011年03月30日 星期三 19:10

楼上说的就行哈~~像这样:

from datetime import datetime
import time
for k in range(1,10):
    time.sleep(1)
    with file(datetime.now().strftime("%Y-%m-%d_%H-%M-%S.txt"), "w") as f:
          f.write(str(k)+'\t'+'\n')

 

另外我觉得最后那个f.close没必要吧,with结束后f就会close的

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号