Python日期常用操作


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)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM