时间戳与日期格式相互转换

古城微笑少年丶 2023-02-24 08:42 134阅读 0赞

1. 时间戳转年月日时分秒

  1. import time
  2. # 创建一个时间戳
  3. t = 1533880334
  4. # 1. 使用time.localtime将时间戳转成日期格式
  5. t = time.localtime(t)
  6. # time.struct_time(tm_year=2018, tm_mon=8, tm_mday=10, tm_hour=13, tm_min=52, tm_sec=14, tm_wday=4, tm_yday=222, tm_isdst=0)
  7. # 2. 使用time.strftime将日期转成日期显示方式(此处返回结果为文本)
  8. t = time.strftime("%Y-%m-%d %H:%M:%S",t)
  9. # '2018-08-10 13:52:14'

将结果这个结果定义成一个函数,便于日后可能使用

  1. import time
  2. def stamp2time(t):
  3. try:
  4. t = float(t)
  5. except:
  6. print('输入错入,请输入一个时间戳(或float型)')
  7. t = time.localtime(t)
  8. t = time.strftime("%Y-%m-%d %H:%M:%S",t)
  9. return t

**应用:**批量获取文件最后一次修改时间

  1. import glob
  2. import time
  3. def stamp2time(t):
  4. try:
  5. t = float(t)
  6. except:
  7. print('输入错入,请输入一个时间戳(或float型)')
  8. t = time.localtime(t)
  9. t = time.strftime("%Y-%m-%d %H:%M:%S",t)
  10. return t
  11. df = pd.DataFrame()
  12. for i in glob.glob(r'D:\PycharmProjects\ipsos_thg\thg_week\result\version_2\*.txt'):
  13. data = {
  14. 'file_name':[i],
  15. 'time_stamp':os.path.getmtime(i),
  16. 'date':stamp2time(os.path.getmtime(i))
  17. }
  18. df = df.append(pd.DataFrame(data))
  19. # file_name time_stamp date
  20. # 0 D:\PycharmProjects\ipsos_thg\thg_week\result\v... 1.534046e+09 2018-08-12 11:59:50
  21. # 0 D:\PycharmProjects\ipsos_thg\thg_week\result\v... 1.534046e+09 2018-08-12 11:59:57
  22. # 0 D:\PycharmProjects\ipsos_thg\thg_week\result\v... 1.534046e+09 2018-08-12 12:00:04
  23. # 0 D:\PycharmProjects\ipsos_thg\thg_week\result\v... 1.534046e+09 2018-08-12 12:00:11
  24. # 0 D:\PycharmProjects\ipsos_thg\thg_week\result\v... 1.534046e+09 2018-08-12 12:00:17
  25. # 0 D:\PycharmProjects\ipsos_thg\thg_week\result\v... 1.534046e+09 2018-08-12 12:00:25
  26. # 0 D:\PycharmProjects\ipsos_thg\thg_week\result\v... 1.534046e+09 2018-08-12 12:00:32
  27. # 0 D:\PycharmProjects\ipsos_thg\thg_week\result\v... 1.534046e+09 2018-08-12 12:00:39
  28. # 0 D:\PycharmProjects\ipsos_thg\thg_week\result\v... 1.534046e+09 2018-08-12 12:00:46

获取文件时间的几种方法

  1. file = r'D:\PycharmProjects\ipsos_thg\thg_week\result\version_2\week17_m4_0421_0427_4areas_v2.txt'
  2. os.path.getatime(file) #输出最近访问时间
  3. os.path.getctime(file) #输出文件创建时间
  4. os.path.getmtime(file) #输出最近修改时间
  5. time.gmtime(os.path.getmtime(file)) #以struct_time形式输出最近修改时间
  6. os.path.getsize(file) #输出文件大小(字节为单位)





























函数 功能
os.path.getatime(file) 输出最近访问时间
os.path.getctime(file) 输出文件创建时间
os.path.getmtime(file) 输出最近修改时间
time.gmtime(os.path.getmtime(file)) 以struct_time形式输出最近修改时间
os.path.getsize(file) 输出文件大小(字节为单位)

2. 将时间转为时间戳

  1. # 1. 首先要确认待转换的数据是时间格式,通常看起来是时间格式的实际是一个文本,我们需要用strptime将其转换为时间格式
  2. t = "2018-08-22 13:14:20"
  3. t = time.strptime(t,'%Y-%m-%d %H:%M:%S')
  4. # time.struct_time(tm_year=2018, tm_mon=8, tm_mday=22, tm_hour=13, tm_min=14, tm_sec=20, tm_wday=2, tm_yday=234, tm_isdst=-1)
  5. # 2. 调用mktime函数将时间转成时间戳
  6. t = time.mktime(t)
  7. # 1534914860.0

将结果这个结果定义成一个函数,便于日后可能使用

  1. def time2stamp(t):
  2. t = time.strptime(t,'%Y-%m-%d %H:%M:%S')
  3. t = time.mktime(t)
  4. return t

发表评论

表情:
评论列表 (有 0 条评论,134人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JS时间格式时间相互转换

    有些时候在写前端的时候,需要用到一些时间,但是时间的格式又比较多,除了时间戳之外,还有各种各样的格式。   更多的时候还需要我们把这些格式进行相互转换。所以为了以后使用方便