python時分秒
⑴ python date,datetime 和time的區別
1,date是日期,通常就是日歷上的年月日,比較大一點的時間單位。
2,time通常就是指秒鍾數,即從1970年1月1日至今進過的秒鍾數。或者指一天中的時分秒,比較小一點的時間單位。就像你問別人What's
the
time,別人會告訴你幾點幾分,而不會告訴你年月日。
3,datetime就是年月日和時分秒,包含以上兩者。
datetime
模塊是用來處理日期時間的,通常是用來進行計算日期,可以很方便的使用加減運算。而time模塊主要是用來處理秒鍾時間的,當然這個秒鍾數也可以轉化成日
期,獲取當前日期通常就是從這個模塊獲取的。不過說time時,有時候表示的也會很寬泛,因為它的詞義就是時間嘛,這個不用太計較的。不過date的意義
是確定無疑的。
⑵ python計算1234秒相當於幾分幾秒
20分56秒。
要注意循環的開始條件及結束條件(剛剛一個小程序的開始條件沒有處理好,所以在計數的時候總是少了1,就是因為第一個滿足條件的record沒有被計數,浪費了半天時間)如果從秒轉換成時分大於24小時,用上面的方法就不好了這就需要自己編寫一個小程序去處理秒到時分秒的轉換了。
Python是一種跨平台的計算機程序設計語言是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言最初被設計用於編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越多被用於獨立的、大型項目的開發Python的應用領域還是非常廣泛的,因為Python是一種解釋型腳本語言,所以可以應用的領域就非常的豐富,比如:Web和Internet開發,科學計算和統計,人工智慧,桌面界面開發,軟體開發,後端開發。
⑶ 怎樣用spss中的python語法將V2列的時間戳轉為時間(年月日時分秒)
# -*- coding: utf-8 -*-
import math
#實現整除運算
def div(x,y):
return int(round(x)/round(y))
#return $cal2('x','x',p_div,x,y);
def DF2DHMS(F):
df = F
day = math.floor(df)
hour = math.floor((df-day)*24)
minute = math.floor((df-day-hour/24)*1440)
sec = (df-day-hour/24-minute/1440)*86400
return [day,hour,minute,sec]
MJD=17366.62152773142
DJMIN = -68569.5
DJMAX = 1e9
DJ1 = 2400000.5
DJ2 = MJD
DJ = DJ1 + DJ2
D1 =''
D2 =''
J =''
JD =''
if ( DJ < DJMIN or DJ > DJMAX ):
J = -1
print u'無效的日期: '+MJD
print J
else:
J = 0
if ( DJ1 >= DJ2 ):
D1 = DJ1
D2 = DJ2
else:
D1 = DJ2
D2 = DJ1
D2 = D2 - 0.5
F1 = D1%1.0
F2 = D2%1.0
F = (F1+F2) % 1.0
if ( F < 0 ) :F = F + 1.0
D = round(D1-F1) + round(D2-F2) + round(F1+F2-F)
JD = round(D) + 1
L = JD + 68569
N = div( 4*L , 146097)
L = L - div(( 146097*N + 3 ) , 4)
I = div( 4000 * (L+1) , 1461001)
L = L - div( 1461*I , 4) + 31
K = div( 80*L , 2447)
ID = L - div( 2447*K , 80)
L = div(K , 11)
IM = K + 2 - 12*L
IY = 100 * ( N-49 ) + I + L
FD = DF2DHMS(F)
print MJD,'對應日期為',[IY,IM,int(ID),int(FD[1]),int(FD[2]),FD[3]]
-------
>>>
17366.6215277 對應日期為 [1906, 6, 5, 14, 54, 59.99599456786802]
>>>
http://www.scicalweb.com/html/online-calculate/609.html
⑷ python時分秒的正則表達式
try:
time.strptime("23:11:11","%H:%M:%S")
returnTrue
except:
returnFalse
⑸ python根據時間戳獲取時分秒
時間戳可簡單理解為自1970/01/01/ 00:00:00 到現在經過的秒數,如果要計算日期運算,因為涉及到潤年,一般使用語言自帶的庫實現比較簡單和高效。但如果只是取時間即時分秒,完全可以不用依賴庫,通過模運算和取整運算的方式實現,並且性能比內部庫函數效率更高。
運行結果,100萬次
1000萬次
性能快了接近200%,如果有涉及到大數據分析場景,百萬甚至千萬級別次的調用時,該演算法還是有意義的
⑹ python數據分析時間序列如何提取一個月的數據
Pandas中,最基本的時間序列類型就是以時間戳為索引的Series對象。
時間戳使用Timestamp(Series派生的子類)對象表示,該對象與datetime具有高度的兼容性,可以直接通過to_datetime()函數將datetime轉換為TimeStamp對象。
import pandas as pd # 導入pandas模塊,並起個別名pd from datetime import datetime import numpy as np pd.to_datetime('20200828') # 將datetime轉換為Timestamp對象
Timestamp('2020-08-28 00:00:00')
當傳入的是多個datetime組成的列表,則Pandas會將其強制轉換為DatetimeIndex類對象。
# 傳入多個datetime字元串 date_index = pd.to_datetime(['20200820', '20200828', '20200908']) date_index
DatetimeIndex(['2020-08-20', '2020-08-28', '2020-09-08'],
dtype='datetime64[ns]', freq=None)
如何取出第一個時間戳
date_index[0] # 取出第一個時間戳
Timestamp('2020-08-20 00:00:00')
2.在Pandas中,最基本的時間序列類型就是以時間戳為索引的Series對象。
# 創建時間序列類型的Series對象 date_ser = pd.Series([11, 22, 33], index=date_index) date_ser
2020-08-20 11
2020-08-28 22
2020-09-08 33
dtype: int64
也可將包含多個datetime對象的列表傳給index參數,同樣能創建具有時間戳索引的Series對象。
# 指定索引為多個datetime的列表 date_list = [datetime(2020, 1, 1), datetime(2020, 1, 15), datetime(2020, 2, 20), datetime(2020, 4, 1), datetime(2020,
⑺ 如何用python編寫一個函數,要求輸入年月日時分秒,輸出該年月日時分秒的下一秒。
defnext_sec(timestr):
fromdatetimeimportdatetime,timedelta
time_format='%Y-%m-%d%H:%M:%S'
time_now=datetime.strptime(timestr,time_format)
time_next_sec=time_now+timedelta(seconds=1)
returntime_next_sec.strftime(time_format)
print(next_sec('2004-12-3123:59:59'))
⑻ python將多個時間段相加時分秒滿60自動向前+1,求最後時間總和
A = ['12:06:30', '13:01:00', '11:58:32', '12:08:46', '15:13:17', '12:22:40', '11:49:31', '12:59:53', '12:08:40',
'11:36:18', '11:29:59', '11:13:27', '13:55:53', '13:05:10', '11:09:10', '10:41:00', '11:16:28', '12:33:28']
total_time = 0
# 計算列表內所有時間的總秒數
for one in A:
res_time = one.split(':')
hour = int(res_time[0])*3600
minate = int(res_time[1])*60
total_time+=hour+minate+int(res_time[2])
# print(total_time)
# 取模,通過divmod函數獲得商和余數
total_hour = divmod(total_time,3600)[0] # 計算小時數
total_min = divmod(divmod(total_time,3600)[1],60)[0] # 計算分鍾數
total_s = total_time%3600%60 # 計算秒數
# 格式化輸出
print(f'最後時間總和{total_time}秒,轉化為時間是{total_hour}:{total_min}:{total_s}')
⑼ 將小數的小時轉化為時分秒 python
a=float(input())
print("%d:%d:%f"%(int(a),int((a-int(a))*3600)//60 ,(a-int(a))*3600%60 ) )
⑽ python 怎麼將從CSV文件中獲取的時間僅展示時分秒,不要日期
importre
>>>s='2018-03-0910:09:08'
>>>re.search(r'd+:d+:d+',s).group()
'10:09:08'