利用str或strftime方法可以傳入乙個格式化字串。
>>>
from datetime import datetime
>>>
>>> stamp = datetime(2016,10,30)
>>> str(stamp)
'2016-10-30 00:00:00'
>>> stamp.strftime('%y-%m-%d')
'2016-10-30'
>>>
將格式化變化後字串轉換為日期:
>>>
>>> value = '2016-10-30'
>>> datetime.strptime(value,'%y-%m-%d')
datetime.datetime(2016, 10, 30, 0, 0)
>>>
或者更好的方法是通過dateutil中的parser.parser方法解析(該方法可以解析大部分人類能夠理解的日期表示形式):
>>>
from dateutil.parser import parse
>>> parse('2016-10-30')
datetime.datetime(2016, 10, 30, 0, 0)
>>>
>>> parse('20/10/2016')
datetime.datetime(2016, 10, 20, 0, 0)
>>> parse('20/10/2016',dayfirst=true)
datetime.datetime(2016, 10, 20, 0, 0)
>>>
或者也可以通過pandas庫來處理(首先需要安裝pandas,pip2 install pandas)
>>>
import pandas as pd
>>>
>>> datestr = ['7/6/2016','10/20/2016']
>>>
>>> pd.to_datetime(datestr)
datetimeindex(['2016-07-06', '2016-10-20'], dtype='datetime64[ns]', freq=none)
>>>
datetime格式定義:
%y
4位數的年
%y 2位數的年
%m 2位數的月[01,12]
%d 2位數的日[01,31]
%h 時(24小時制) [00,23]
%i 時(12小時制) [01,12]
%m 2位數的分[00,59]
%s 秒[00,61] (秒60和秒61用於閏秒)
%w 用整數表示的星期幾[0 (星期天),6]
%u 每年的第幾周[00,53] 星期天被認為是每週的第一天,
每年第乙個星期天之前的那幾天就被認為是「第0周」
%w 每年的第幾周[00,53] 星期一被認為是每週的第一天,
每年第乙個星期一之前的那幾天就被認為是「第0周」
%z 以+hhmm或-hhmm表示的utc時區偏移量,如果市區為*****
(時間物件有*****和aware之分),則返回空字串
%f %y-%m-%d簡寫形式,例如:2016-02-15
%d %m/%d/%y簡寫形式,例如:02/15/16
%a 星期幾的簡寫
%a 星期幾的全稱
%b 月份的簡寫
%b 月份的全稱
%c 完整的日期和時間,例如「tue 01 may 2016 04:20:58 pm」
%p 不同環境中的am或pm
%x 適合於當前環境的日期格式,例如,在美國,
「may 1,2016」會產生"05/01/2016"
%x 適合於當前環境的時間格式,例如:"04:24:12 pm"
datetime與字串相互轉化
之前處理資料時,獨取出來的時間資料自動轉化成了str形式,我總是忘記處理的語句,在此做個筆記提醒自己。python標準庫包含用於日期 date 和時間 time 資料的資料型別,而且還有日曆方面的功能。我們主要會用到datetime time以及calendar模組。datetime.datetim...
連字元字串與駝峰字串的相互轉換
連字元轉駝峰 第一種方法 使用正則匹配函式 let str str arr test str str.replace w w g,function 1,2,3 console.log str 列印 strarrtest第二種方法 使用 js 中 split 和 reduce 方法 let str s...
C 字串與C字串的相互轉換問題
將 char 或者 char 轉換為 string 直接賦值即可轉換。將string轉換為char 或者char string 是c 標準庫裡面其中乙個,封裝了對字串的操作 把string轉換為char 有3種方法 data c str copy 1.呼叫 string的data 函式 1 以字元陣...