Python时间

下面为打印时间戳

#!/usr/bin/env python 
import time 
print time.time() 
#打印结果为 #1279578704.6725271 

time.localtime(time.time()) 
#打印结果为 
#time.struct_time(tm_year=2010, tm_mon=7, tm_mday=19, tm_hour=22, tm_min=33, tm_sec=39, tm_wday=0, tm_yday=200, tm_isdst=0) 

time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) 
#现在看起来更有希望格式成我们想要的时间了 2018-10-31 23:58:19

#将字符串转换成时间格式
s2='20120216';
a=time.strptime(s1,'%Y%m%d');
'''
python中时间日期格式化符号:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12) 
%M 分钟数(00=59)
%S 秒(00-59)

%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身 
'''

增加或减少一天

#!/usr/bin/evn python
#time 增加,减少一天
import time
import datetime

dayTime = '20131101'
day = dayTime[6:8]
print day 
if cmp(day, '01') == 0:
#将字符串转换成time格式
input_day = time.strptime(dayTime, '%Y%m%d')
#将time格式转换成date格式
input_date = datetime.datetime(*input_day[:3])
#日期减一天
input_date = input_date + datetime.timedelta(-1)
#按字符串打印出时间
print input_date.strftime('%Y%m%d')

 获取今天和昨天

today = datetime.datetime.now()
yesterday = today - datetime.timedelta(days=1)
std_dt = today.strftime("%Y%m%d")
yest_dt = yesterday.strftime("%Y%m%d")

时间遍历

#!/bin/env python

import sys
import time
import datetime
import commands

if __name__ == '__main__':
    if len(sys.argv) < 3:
        print 'argument is less then 3'
        exit(1)

    hour_start=sys.argv[1] 
    hour_end=sys.argv[2]

    if (int(hour_start) > int(hour_end)):
        exit(1)

    input_hour_time = time.strptime(hour_start,'%Y%m%d%H');
    base_hour = datetime.datetime(*input_hour_time[:4])

    iter_hour = base_hour
    while True:
        iter_str = iter_hour.strftime('%Y%m%d%H')
        
        if iter_str == hour_end:
            print "loop end"
            break
       
       #exec program
        cmd = "python process.py {0}".format(iter_str)
        #cmd = "python process.py {0}".format(iter_str)
        print cmd
        ret = commands.getstatusoutput(cmd)
        if ret[0] == 0:
            print "{0} success".format(iter_str)
        else:
            print "return problem {0}".format(ret)

        iter_hour = iter_hour + datetime.timedelta(hours=1)

 减一天函数

def day_sub(baseday, sub):
    input_day = time.strptime(baseday, '%Y%m%d')
    input_date = datetime.datetime(*input_day[:3])
    input_date = input_date + datetime.timedelta(sub)
    yesterday = input_date.strftime('%Y%m%d')
    return yesterday
原文地址:https://www.cnblogs.com/cfox/p/3417846.html