116 python日期格式化操作

2021-08-20 21:34:07 字數 4528 閱讀 8937

1.將字串的時間轉換為時間戳

方法:

a = "2013-10-10 23:40:00"

#將其轉換為時間陣列

import time

timearray = time.strptime(a, "%y-%m-%d %h:%m:%s")

#轉換為時間戳:

timestamp = int(time.mktime(timearray))

timestamp == 1381419600

2.格式更改

如a = 「2013-10-10 23:40:00」,想改為 a = 「2013/10/10 23:40:00」

方法:先轉換為時間陣列,然後轉換為其他格式

複製****如下:

timearray = time.strptime(a, "%y-%m-%d %h:%m:%s")

otherstyletime = time.strftime("%y/%m/%d %h:%m:%s", timearray)

3.時間戳轉換為指定格式日期

方法一:利用localtime()轉換為時間陣列,然後格式化為需要的格式,如:

複製****如下:

timestamp = 1381419600

timearray = time.localtime(timestamp)

otherstyletime = time.strftime("%y-%m-%d %h:%m:%s", timearray)

otherstyletime == "2013-10-10 23:40:00"

方法二:

import datetime

timestamp = 1381419600

datearray = datetime.datetime.utcfromtimestamp(timestamp)

otherstyletime = datearray.strftime("%y-%m-%d %h:%m:%s")

otherstyletime == "2013-10-10 23:40:00"

4.獲取當前時間並轉換為指定日期格式

方法一:

import time

#獲得當前時間時間戳

now = int(time.time()) ->這是時間戳

#轉換為其他日期格式,如:"%y-%m-%d %h:%m:%s"

timearray = time.localtime(timestamp)

otherstyletime = time.strftime("%y-%m-%d %h:%m:%s", timearray)

方法二:

import datetime

#獲得當前時間

now = datetime.datetime.now() ->這是時間陣列格式

#轉換為指定的格式:

otherstyletime = now.strftime("%y-%m-%d %h:%m:%s")

5.獲得三天前的時間的方法

import time

import datetime

#先獲得時間陣列格式的日期

threedayago = (datetime.datetime.now() - datetime.timedelta(days = 3))

#轉換為時間戳:

timestamp = int(time.mktime(threedayago.timetuple()))

#轉換為其他字串格式:

otherstyletime = threedayago.strftime("%y-%m-%d %h:%m:%s")

注:timedelta()的引數有:days,hours,seconds,microseconds

6.給定時間戳,計算該時間的幾天前時間

timestamp = 1381419600

#先轉換為datetime

import datetime

import time

datearray = datetime.datetime.utcfromtimestamp(timestamp)

threedayago = datearray - datetime.timedelta(days = 3)

#參考5,可以轉換為其他的任意格式了

7、用python計算昨天和明天的日期

>>> import datetime #匯入日期時間模組

>>> today = datetime.date.today() #獲得今天的日期

>>> print today #輸出今天日期

2014-01-04

>>> yesterday = today - datetime.timedelta(days=1) #用今天日期減掉時間差,引數為1天,獲得昨天的日期

>>> print yesterday

2014-01-03

>>> tomorrow = today + datetime.timedelta(days=1) #用今天日期加上時間差,引數為1天,獲得明天的日期

>>> print tomorrow

2014-01-05

>>>

>>> print "昨天:%s, 今天:%s, 明天:%s" % (yesterday, today, tomorrow) #字串拼接在一起輸出,這3天的日期

昨天:2014-01-03, 今天:2014-01-04, 明天:2014-01-05

8、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

9、列印出當前的日期的python程式

!/usr/bin/python

import time

## dd/mm/yyyy格式

print (time.strftime("%d/%m/%y"))

#輸出:

11/03/2014

10、使用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)

11、str:『2023年3月4日』,要怎麼轉換為datetime

# -*- coding: utf-8 -*-

from datetime import datetime

time = "2023年4月2日"

# 將str中的漢字換掉

time = time.replace(r'年', '-').replace(r'月', '-').replace(r'日', '')

print(time) # 輸出2017-4-2

print(type(time)) # restime = datetime.strptime(time, '%y-%m-%d')

print(restime) # 輸出結果:2017-04-02 00:00:00

print(type(restime))#

12、任意時間字串轉換時間物件

import time

from dateutil import parser

time_string = time.ctime() # 'thu dec 22 10:35:25 2016',這裡可以是任意的時間格式

datetime_struct = parser.parse(time_string)

print type(datetime_struct) # print datetime_struct.strftime('%y-%m-%d %h:%m:%s') # 2016-12-22 13:58:59

Python格式化日期

我們可以使用 time 模組的 strftime 方法來格式化日期,time.strftime format t usr bin python coding utf 8 import time 格式化成2016 03 20 11 45 39形式 print time.strftime y m d h...

Python 日期格式化

獲取當前日期 time.time 獲取元組形式的時間戳 time.local time.time 格式化日期的函式 基於元組的形式進行格式化 1 time.asctime time.local time.time 2 time.strftime format t 將格式字串轉換為時間戳 time.s...

python格式化日期輸入

strftime strftime format tuple string 將指定的struct time 預設為當前時間 根據指定的格式化字串輸出 python中時間日期格式化符號 y 兩位數的年份表示 00 99 y 四位數的年份表示 000 9999 m 月份 01 12 d 月內中的一天 0...