python获取不同自定义格式时间戳的实现方法
一、获取 2021-12-05 19:28:35 这种时间格式
返回本机电脑时间戳,格式为:%Y-%m-%d %H:%M:%S,其中的-和:可以自己设定
代码实现
def getDT(F1="-", F2=":", F3=" "):
"""
返回本机电脑时间戳,格式为:%Y-%m-%d %H:%M:%S,其中的-和:可以自己设定
:param F1: String类型,年月日之间的“-”,如:2019-07-16,可以自己设定,默认为“-”
:param F2: String类型,时分秒之间的“:”,如:15:41:04,可以自己设定,默认为“:”
:param F3: String类型,年月日和时分秒之间的“ ”,如:2019-07-16 15:41:04,可以自己设定,默认为“ ”
:return: 返回 2019-07-16 15:41:04 格式的系统时间戳
"""
import time
DT = time.strftime("%Y" + F1 + "%m" + F1 + "%d" + F3 + "%H" + F2 + "%M" + F2 + "%S", time.localtime())
return DT
调用方法
if __name__ == '__main__':
print(getDT())
执行结果
2021-12-05 19:28:35
二、获取当前时间字符串或时间戳(可精确到微秒)
如获取时间2021-12-05 19:31:50.707
代码实现
# 获取当前时间字符串或时间戳(可精确到微秒)
def getTime(needFormat=0):
'''
获取当前时间字符串或时间戳(都可精确到微秒)
:param needFormat:int,是否需要毫秒的格式,默认为0不需要,若为1,则需要输出毫秒
:param formatMS:
:return:
'''
time_str=''
if needFormat == 1 :
time_str=str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S{}'.format(r".%f",3)))
time_str_ms=str(time_str).split('.') #取毫秒部分
# print('time_str_ms={},{}'.format(time_str_ms[0], time_str_ms[1]))
time_str=str(time_str_ms[0])+'.'+str(int(round(float('0.'+str(time_str).split('.')[1]),3)*1000))
# print('time_str={}'.format(time_str))
elif needFormat == 0 :
time_str=str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
print('time_str={}'.format(time_str))
return time_str
调用方法
if __name__ == '__main__':
print(getTime(1))
执行结果
time_str=2021-12-06 16:31:50.707
2021-12-05 19:31:50.707
三、返回本机电脑日期
返回 2019-07-16-10格式的日期
代码实现
def getDate(F1="-",hours=1):
"""
返回本机电脑日期
:param F1: String类型,年月日小时之间的“-”,如:2019-07-16-10,可以自己设定,默认为“-”
:param hours: int,是否需要输出小时数,可以自己设定,默认为输出
:return: 返回 2019-07-16-10格式的日期
"""
if int(hours)==1:
dateFormat="%Y" + F1 + "%m" + F1 + "%d"+ F1 + "%H"
else:
dateFormat = "%Y" + F1 + "%m" + F1 + "%d"
DT = time.strftime(dateFormat, time.localtime())
return DT
调用方法
if __name__ == '__main__':
print(getDate())
执行结果
2021-12-05-19
四、获取 "2030-12-02T17:00:00+08:00"格式的时间
代码实现
def get_now_ISO_time(F1="-", F2=":", F3="T"):
#"2030-12-02T17:00:00+08:00"
result=time.strftime("%Y" + F1 + "%m" + F1 + "%d" + F3 + "%H" + ':00:00+08:00', time.localtime())
print("get_now_ISO_time_08={}".format(result))
return str(result)
调用方法
if __name__ == '__main__':
print(get_now_ISO_time())
执行结果
get_now_ISO_time_08=2021-12-05T19:00:00+08:00
2021-12-05T19:00:00+08:00
今日美图