1. 程式人生 > >python學習——Python日期的加減等操作

python學習——Python日期的加減等操作

1. 日期輸出格式化

所有日期、時間的api都在datetime模組內。

1. datetime => string

now = datetime.datetime.now()
now.strftime('%Y-%m-%d %H:%M:%S')
#輸出2012-03-05 16:26:23.870105

strftime是datetime類的例項方法。

2. string => datetime

t_str = '2012-03-05 16:26:23'
d = datetime.datetime.strptime(t_str, '%Y-%m-%d %H:%M:%S')

strptime是datetime類的靜態方法。

2. 日期比較操作

在datetime模組中有timedelta類,這個類的物件用於表示一個時間間隔,比如兩個日期或者時間的差別。

構造方法:

datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)

所有的引數都有預設值0,這些引數可以是int或float,正的或負的。

可以通過timedelta.days、tiemdelta.seconds等獲取相應的時間值。

timedelta類的例項,支援加、減、乘、除等操作,所得的結果也是timedelta類的例項。比如:

year = timedelta(days=365)
ten_years = year *10
nine_years = ten_years - year

同時,date、time和datetime類也支援與timedelta的加、減運算。

datetime1 = datetime2 +/- timedelta
timedelta = datetime1 - datetime2

這樣,可以很方便的實現一些功能。

1. 兩個日期相差多少天。

d1 = datetime.datetime.strptime('2012-03-05 17:41:20', '%Y-%m-%d %H:%M:%S
') d2 = datetime.datetime.strptime('2012-03-02 17:41:20', '%Y-%m-%d %H:%M:%S') delta = d1 - d2 print delta.days

輸出:3

2. 今天的n天后的日期。

now = datetime.datetime.now()
delta = datetime.timedelta(days=3)
n_days = now + delta
print n_days.strftime('%Y-%m-%d %H:%M:%S')

輸出:2012-03-08 17:44:50

複製程式碼
#coding=utf-8
import datetime
now=datetime.datetime.now()
print now
#將日期轉化為字串 datetime => string
print now.strftime('%Y-%m-%d %H:%M:%S')

t_str = '2012-03-05 16:26:23'
#將字串轉換為日期 string => datetime
d=datetime.datetime.strptime(t_str,'%Y-%m-%d %H:%M:%S')
print d

#在datetime模組中有timedelta類,這個類的物件用於表示一個時間間隔,比如兩個日#期或者時間的差別。

#計算兩個日期的間隔
d1 = datetime.datetime.strptime('2012-03-05 17:41:20', '%Y-%m-%d %H:%M:%S')
d2 = datetime.datetime.strptime('2012-03-02 17:41:20', '%Y-%m-%d %H:%M:%S')
delta = d1 - d2
print delta.days
print delta

#今天的n天后的日期。
now=datetime.datetime.now()
delta=datetime.timedelta(days=3)
n_days=now+delta
print n_days.strftime('%Y-%m-%d %H:%M:%S')

相關推薦

python學習——Python日期操作

1. 日期輸出格式化 所有日期、時間的api都在datetime模組內。 1. datetime => string now = datetime.datetime.now() now.strftime('%Y-%m-%d %H:%M:%S') #輸出2012-03-05 16:26:23.8701

Python 日期 操作

  From:https://www.cnblogs.com/vampirejt/p/4159267.html   1. 日期輸出格式化 所有日期、時間的api都在datetime模組內。 1. datetime => string now = da

PYTHON學習第一模塊 Haproxy配置操作

strip uri color 操作 conn fio env print name 購物車模擬 需求: 根據用戶輸入輸出對應的backend下的 server信息可添加backend 和 sever信息可刪除backend 和sever信息 添加server信息時,

Python學習筆記七:文件操作

dex enc 只讀 python nco 打印 如何 == continue 文件操作 對照一個word文件的操作方式,來體會文件操作的內容 打開文件:f=open(“file”),提示編碼錯誤,windows默認是GBK f=open(“file”,encoding=”

Python學習之旅—Day05(文件操作)

big 這份 案例 最終 lis remove 方法表 == offset 前言: 前面5篇博客主要對Python的相關基礎知識和重點疑難問題進行了相關整理,本篇博客主要針對文件操作相關知識點來做一個系統性的梳理,以期幫助大家快速掌握文件操作的知識。

python學習(六)---文件操作

not game seek read 終端設備 fas uic med ear 文件操作文件操作流程 1、打開文件,得到文件句柄並賦值給一個變量 2、通過句柄對文件進行操作 3、關閉文件現有文件如下: Somehow, it seems the love I knew

Python學習之路:文件操作

append 句柄 enc pre light logs utf highlight 追加內容 文件基本操作: 打開、讀取、追加、關閉 #data = open("yesterday",encoding="utf-8").read() #打開並讀取文件 f=open("y

Python學習之路:文件操作之增刪改查

打印 odin day 打開 aps 之前 編碼 數據 adl f = open("yesterday","r",encoding="utf-8") #print(f.read()) #for i in range(5): # print(f.readline())

python學習筆記(二)列表操作

練習 位數組 post print ihe 之間 反轉 st2 money 列表及列表操作:   列表是最常用的數據類型之一,列表也叫數組,列表定義,使用[]即可;列表裏面可以再套列表,一個裏面套一個列表,叫二維數組;一個裏面套一個列表,裏面的列表再套一個列表,這個叫三位數

python 列表元組乘除法

python list python 列表 div 加減 其他 type 加減乘除 相加 元組(typle)列表(list)沒有減法和除法,但有加法和乘法。 1、加法,即把元素相加。只可以list和tuple相加,不能加其他類型。 t= (1, ) + (2, 3, 4)

Python Appium 滑動、點擊操作

arm sof 使用場景 坐標 args python art icu pyc Python Appium 滑動、點擊等操作 1、手機滑動-swipe # FileName : Tmall_App.py # Author : Adil # DateTi

python學習筆記2-字符串操作

rom span 不可 div bsp 報錯 換行符 pri pos 一、字符串切片 #切片也能適合字符串 tittle=‘今 天 發 蘋 果‘ for i t in enumerate(tittle): #enumerate可以同時循環下標和值 print(

Python學習-字符串函數操作1

-- dsw 註意點 wid 計算 ref 字符 capital 設置 字符串的函數操作 capitalize():可以將字符串首字母變為大寫 返回值:首字符大寫後的新字符串 str = "liu" print(str.capitalize()); // Liu pr

Python學習-字符串函數操作3

str2 分隔 partition -o true light 得到 最大 多個 字符串函數操作 isprintable():判斷一個字符串中所有字符是否都是可打印字符的. 與isspace()函數很相似 如果字符串中的所有字符都是可打印的字符或字符串為空返回 True,否

python學習之四(集合的相關操作)

集合: 集合是由不同元素組成的,集合裡的元素是無序的,集合中的元素必須是不可變的。 集合的簡單定義: s = {1,2,3,4,5,6,6} print(type(s)) print(s) 輸出結果: type表明了這是一個集合型別,輸出元素集合把重複的元素自動去除。另外利用這種

Python學習基礎筆記——modules(模組操作

modules(模組) 1.引入模組,例如math模組 import math root=math.sqrt(36) flr=math.floor(89.9) print(root) print(flr) 6.0 89.0 2.給模組的名字賦予簡稱,之後都可以使用簡稱 im

python學習筆記:string的首尾操作

(一)刪除首尾特定字元: 1、S.strip([chars]):刪除字串S首尾特定字元(序列)chars,預設為空格; 2、S.lstrip([chars]):刪除字串S開頭特定字元(序列)chars,預設為空格; 3、S.rstrip([chars]):刪除字串S尾部特定字元(序列)c

Python學習day04-列表魔法以及相關操作

一、列表的基本操作 列表: (1)列表中可以儲存任何型別,如:數字、字串、布林值、列表… (2)列表的儲存是不連續的,修改後還是本身列表(類似於C語言的連結串列) ①列表的取值 (1)索引取值 li=[1,2,"a","b"] print(li[1]) #2

python學習日記(三)"turtle簡單操作"

其實學了好幾天了,不過之前一直沒有整理,今天就是把這段時間學的整理包括複習一遍 繪圖工具turtle turtle沒有學的很全,大致知道怎麼操作,還要再看看 import import就類似於c裡面的include,引入庫就可以呼叫函數了 turtle

Coursera 學習記錄:Tomorrow never knows?(實現日期一的操作

描述 甲殼蟲的《A day in the life》和《Tomorrow never knows》膾炙人口,如果告訴你a day in the life,真的會是tomorrow never knows? 相信學了計概之後這個不會是難題,現在就來實現吧。 讀入一個格式為y