Python日期与字符串互转
1⃣️str -> date
import datetime
detester = '2017-01-01'
d1 = datetime.datetime.strptime(detester,"%Y-%m-%d")
print d1,type(d1)
d2 = d1.date()
print d2,type(d2)
#运行结果
2017-01-01 00:00:00 <type 'datetime.datetime'>
2017-01-01 <type 'datetime.date'>
2⃣️date -> str
import datetime
d = datetime.datetime.now()
print d,type(d)
d = d.strftime("%Y-%m-%d")
print d,type(d)
#运行结果;
2019-11-03 16:08:30.672000 <type 'datetime.datetime'>
2019-11-03 <type 'str'>
如何用Python在指定日期上减去7天?
可以使用datetime包的timedelta,timedelta用于表示两个datetime时间的时间差,可以直接与datetime实例相加减
from datetime import datetime, timedelta d = datetime.now() d1 = d + timedelta(days=-7) d2 = d - timedelta(days=7)
python 获得日期是星期几
from datetime import datetime,date dayOfWeek = datetime.now().weekday() print dayOfWeek dayOfWeek = datetime.today().weekday() print dayOfWeek
datetime类的weekday()方法可以获得datetime是星期几,注意weekday() 返回的是0-6是星期一到星期日
python 格式化日期
# -*- coding:utf-8 -*- import time #当前时间 print time.time() #时间戳形式 print time.localtime(time.time()) #简单可读形式 print time.asctime( time.localtime(time.time()) ) # 格式化成2016-03-20 11:45:39形式 print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) # 格式化成Sat Mar 28 22:24:24 2016形式 print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()) # 将格式字符串转换为时间戳 a = "Sat Mar 28 22:24:24 2016" print time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))
1481036968.19 time.struct_time(tm_year=2016, tm_mon=12, tm_mday=6, tm_hour=23, tm_min=9, tm_sec=28, tm_wday=1, tm_yday=341, tm_isdst=0) Tue Dec 06 23:09:28 2016 2016-12-06 23:09:28 Tue Dec 06 23:09:28 2016 1459175064.0
python 字符串日期加减后怎么比较
转成datetime处理,处理好了再转成字符串 import datetime b = datetime.datetime.strptime("2016-3-1", "%Y-%m-%d") c = b + datetime.timedelta(days=-2) print(c.strftime("%Y-%m-%d"))
python 计算时间差 字符串
#coding:utf8 import datetime def time_differ(date1='12:55:05',date2='13:15:05'): ''' @传入是时间格式如'12:55:05' ''' date1=datetime.datetime.strptime(date1,"%H:%M:%S") date2=datetime.datetime.strptime(date2,"%H:%M:%S") if date1 < date2: return date2-date1 else: return date1-date2 date1 = '13:05:05' date2 = '13:15:05' differ = time_differ(date1,date2) print differ
python3 datetime() 模块之 timedelta() 类
datetime 模块定义了下面的几个类:
datetime.date:表示日期的类。常用的属性有year, month, day;
datetime.time:表示时间的类。常用的属性有hour, minute, second, microsecond;
datetime.datetime:表示日期时间。
datetime.timedelta:表示时间间隔,即两个时间点之间的长度。
datetime.tzinfo:与时区有关的相关信息
datetime.timedelta 类
该类注意用来计算前后的时间 =大师兄python
datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
注意参数中没有年的选项,可以使用 weeks=56 来表示一年。
import datetime day = datetime.datetime.now() ddelay = datetime.timedelta(days=1) wdelay = datetime.timedelta(weeks = 5) ydelay = datetime.timedelta(weeks = 56) print(day) print(day - ddelay) # 一天前的时间 print(day + ddelay) # 一天后的时间 print(day - wdelay) # 5 周前 print(day + wdelay) # 5 周后 print(day - ydelay) # 一年前 print(day + ydelay) # 一年后
Python 日期如何将“20130325”转换为“2013,03,25”格式?
import time time.strftime('%Y, %m, %d', time.strptime('20130325', '%Y%m%d'))
python 如何获取毫秒级系统时间
在datetime模块,使用格式化符号 '%f'。
import datetime time_now = datetime.datetime.now().strftime('%H:%M:%S.%f') print(time_now)
python将Unix时间戳转换成时间
将时间戳转换成时间
在时间戳转换成时间中,首先需要将时间戳转换成localtime,再转换成时间的具体格式:
- 利用
localtime()
函数将时间戳转化成localtime的格式 - 利用
strftime()
函数重新格式化时间
#coding:UTF-8 import time timestamp = 1462451334 #转换成localtime time_local = time.localtime(timestamp) #转换成新的时间格式(2016-05-05 20:28:54) dt = time.strftime("%Y-%m-%d %H:%M:%S",time_local) print(dt)
python日期格式化操作
1、python里使用time模块来获取当前的时间 #!/usr/bin/python import time print (time.strftime("%H:%M:%S")) ## 12 hour format ## print (time.strftime("%I:%M:%S")) #:输出 #18:11:30 #6:11:30 2、打印出当前的日期的python程序 !/usr/bin/python import time ## dd/mm/yyyy格式 print (time.strftime("%d/%m/%Y")) #输出: 11/03/2014 3、使用datetime模块来获取当前的日期和时间 #!/usr/bin/python import datetime i = datetime.datetime.now() print ("当前的日期和时间是 %s" % i) print ("ISO格式的日期和时间是 %s" % i.isoformat() ) print ("当前的年份是 %s" %i.year) print ("当前的月份是 %s" %i.month) print ("当前的日期是 %s" %i.day) print ("dd/mm/yyyy 格式是 %s/%s/%s" % (i.day, i.month, i.year) ) print ("当前小时是 %s" %i.hour) print ("当前分钟是 %s" %i.minute) print ("当前秒是 %s" %i.second)
4、时间戳和字符串的互相转化
# 字符串格式化时间转换时间戳
str_time = '2018-1-17'
print(time.mktime(time.strptime(str_time,'%Y-%m-%d')))
# 时间戳转换成格式化的时间字符串
gsh_time= time.time()
print(time.strftime('%Y-%m-%d',time.localtime(gsh_time)))
# datetime对象转换成时间戳
dt = datetime.datetime.now()
print(time.mktime(dt.timetuple()))
# 时间戳转换成datetime对象
sjc_time = time.time()
print(datetime.datetime.fromtimestamp(sjc_time))
#-----------------字符串日期和时间戳相互转换例子-----------------
# import time
# #字符串日期转换为时间戳
# a = "2018-12-01 10:11:12"
# timearray = time.strptime(a,"%Y-%m-%d %H:%M:%S")#先将字符串转换为时间数组
# print timearray
# timestamp = int(time.mktime(timearray))#时间数组转换为时间戳
# print timestamp
# #时间戳转换为时间格式
# print time.localtime()
# timearray = time.localtime(timestamp)#先转换为时间数组
# print time.strftime("%Y-%m-%d %H:%M:%S",timearray)
# exit(0)