import datetime as dt
公司主營(yíng)業(yè)務(wù):網(wǎng)站制作、成都網(wǎng)站制作、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。成都創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。成都創(chuàng)新互聯(lián)推出安陸免費(fèi)做網(wǎng)站回饋大家。
now_time = str(dt.datetime.now().strftime('%F %T'))
with open('xxxx.txt','w') as t:
t.write(now_time)
縮進(jìn)你調(diào)一下,這不好確定縮進(jìn)“xxxx.txt”是你的文件,需要跟你的Python代碼文件在一個(gè)文件夾,否則前面要寫(xiě)絕對(duì)路徑。%f表示年月日,%t表示后面的時(shí)間。
現(xiàn)象描述:
1、time.clock 在win系統(tǒng)和linux系統(tǒng)下對(duì)相同程序的計(jì)時(shí)結(jié)果不一致
2、到底應(yīng)該用什么時(shí)間計(jì)時(shí)?為什么用time.time與time.clock計(jì)時(shí)會(huì)有那么大的差異
在計(jì)算機(jī)領(lǐng)域有多種時(shí)間。
第一種稱作CPU時(shí)間或執(zhí)行時(shí)間,用于測(cè)量在執(zhí)行一個(gè)程序時(shí)CPU所花費(fèi)的時(shí)間。第二種稱作掛鐘時(shí)間,測(cè)量執(zhí)行一個(gè)程序時(shí)的總時(shí)間。掛鐘時(shí)間也被稱作流逝時(shí)間或運(yùn)行時(shí)間。與CPU時(shí)間相比,掛鐘時(shí)間通常長(zhǎng)些,因?yàn)镃PU執(zhí)行測(cè)量的程序可能同時(shí)還在執(zhí)行其它程序的指令。
另一個(gè)重要概念是所謂的系統(tǒng)時(shí)間,由系統(tǒng)時(shí)鐘測(cè)量。系統(tǒng)時(shí)間表示計(jì)算機(jī)系統(tǒng)時(shí)間傳遞的概念。要記住系統(tǒng)時(shí)鐘是可以由操作系統(tǒng)修改的,就是修改系統(tǒng)時(shí)間。
在Unix系統(tǒng)上,time.time的作用與Windows相同,但time.clock的意義不同。
在Unix系統(tǒng)上,time.clock以秒為單位返回當(dāng)前處理器時(shí)間,例如,執(zhí)行當(dāng)前線程所花費(fèi)的CPU時(shí)間。而在Windows上,它是以秒為單位的返回自首次調(diào)用該函數(shù)以來(lái)所流逝的系統(tǒng)時(shí)間。
以我遇到的Ubuntu系統(tǒng)上運(yùn)行time.time和time.clock的例子:
time.time()顯示系統(tǒng)時(shí)間過(guò)去大概1秒,而time.clock()顯示花費(fèi)在當(dāng)前進(jìn)程上的CPU時(shí)間只有于1毫秒。
而win下time.time()和time.clock()顯示系統(tǒng)時(shí)間都是大致過(guò)去了1秒
在測(cè)量程序準(zhǔn)確性能時(shí)應(yīng)該使用哪一個(gè)呢?
這要視情況而定。如果程序運(yùn)行的系統(tǒng)能夠提供足夠的資源給程序,例如,一個(gè)運(yùn)行基于Python的web應(yīng)用程序的web服務(wù)器,則使用time.clock()來(lái)測(cè)量程序會(huì)更有意義,因這個(gè)web應(yīng)用程序可能是服務(wù)器上的主要程序 。如果程序運(yùn)行的系統(tǒng)上還同時(shí)運(yùn)行著其它大量程序,則使用time.time()進(jìn)行測(cè)量會(huì)更有意義。 如果不是這樣,就應(yīng)該使用基于掛鐘的計(jì)時(shí)器來(lái)測(cè)量程序的性能,因?yàn)檫@樣通常能反應(yīng)程序的環(huán)境。
放結(jié)論,一般情況下:
1、win用time.clock或time.time
2、linux 下用time.time? 或 datetime.datetime.now().timestamp()
【1】(重要)? ? Python測(cè)量時(shí)間,用time.time還是time.clock?
1、默認(rèn)情況下,pandas中的時(shí)間序列是單純(naive)的時(shí)區(qū),其索引的tz字段為None。
2、可以用時(shí)區(qū)集生成日期范圍。
3、從單純到本地化的轉(zhuǎn)換是通過(guò)tz_localize方法處理的。
4、一旦時(shí)間序列被本地化到某個(gè)特定時(shí)區(qū),就可以用tz_convert將其轉(zhuǎn)換到別的時(shí)區(qū)了。
5、對(duì)于上面這種時(shí)間序列(它跨越了美國(guó)東部時(shí)區(qū)的夏令時(shí)轉(zhuǎn)變期),我們可以將其本地化到EST,再轉(zhuǎn)換為UTC或柏林時(shí)間。
這需求折騰了我半天..
import time
import datetime as datetime
def late_time(time2):
# 先獲得時(shí)間數(shù)組格式的日期
#time2是外部傳入的任意日期
now_time = datetime.datetime.strptime(time2, '%Y-%m-%d')
#如需求是當(dāng)前時(shí)間則去掉函數(shù)參數(shù)改寫(xiě) ? ? ?為datetime.datetime.now()
threeDayAgo = (now_time - datetime.timedelta(days =30))
# 轉(zhuǎn)換為時(shí)間戳
timeStamp =int(time.mktime(threeDayAgo.timetuple()))
# 轉(zhuǎn)換為其他字符串格式
otherStyleTime = threeDayAgo.strftime("%Y-%m-%d")
return otherStyleTime
a = late_time("2019-3-30")
print(a)# 打印2018-02-28
import datetime
nowTime=datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')#現(xiàn)在
pastTime = (datetime.datetime.now()-datetime.timedelta(hours=1)).strftime('%Y-%m-%d %H:%M:%S')#過(guò)去一小時(shí)時(shí)間
afterTomorrowTime = (datetime.datetime.now()+datetime.timedelta(days=2)).strftime('%Y-%m-%d %H:%M:%S')#后天
tomorrowTime = (datetime.datetime.now()+datetime.timedelta(days=1)).strftime('%Y-%m-%d %H:%M:%S')#明天
print('\n',nowTime,'\n',pastTime,'\n',afterTomorrowTime,'\n',tomorrowTime)
運(yùn)行結(jié)果:
python中的時(shí)間模塊主要有time, datetime。
I, time模塊
time模塊中包含了四種時(shí)間格式:
float格式,即給定時(shí)間相對(duì)于epoch增加的秒數(shù)
tuple格式,一個(gè)九元組 (tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec, tm_wday, tm_yday, tm_isdst)
string格式,'Mon Feb 6 15:00:06 2012'
format格式,以指定的格式生成的時(shí)間
針對(duì)這幾種時(shí)間格式,time模塊提供了函數(shù)在格式之間相互轉(zhuǎn)換。
asctime(tuple) -string
ctime(float) -string
gmtime(float) -tuple
localtime(float) -tuple
mktime(tuple) -float
strftime(format, tuple) -format string
strptime(formatstring, format) -tuple
time() - float
上述函數(shù)中,除了time()函數(shù)直接返回當(dāng)前時(shí)間相對(duì)于epoch的秒數(shù)外,其他函數(shù)都要求有時(shí)間的輸入,如果沒(méi)有輸入,則默認(rèn)使用當(dāng)前時(shí)間。
另外,strftime和strptime中的format使用下面的格式:
%a 英文星期簡(jiǎn)寫(xiě)
%A 英文星期的完全
%b 英文月份的簡(jiǎn)寫(xiě)
%B 英文月份的完全
%c 顯示本地日期時(shí)間
%d 日期,取1-31
%H 小時(shí), 0-23
%I 小時(shí), 0-12
%m 月, 01 -12
%M 分鐘,1-59
%j 年中當(dāng)天的天數(shù)
%w 顯示今天是星期幾
%W 第幾周
%x 當(dāng)天日期
%X 本地的當(dāng)天時(shí)間
%y 年份 00-99間
%Y 年份的完整拼寫(xiě)
%S 秒(00-59)
除了上述的時(shí)間轉(zhuǎn)換函數(shù)之外,模塊還提供了下面的函數(shù):
clock() 返回進(jìn)程的創(chuàng)建時(shí)間,以秒計(jì)數(shù)的float
sleep(float) sleep一段時(shí)間,以秒計(jì)數(shù)
tzset() 更改時(shí)區(qū)
II, datetime
datetime模塊定義了下面這幾個(gè)類:
datetime.date:表示日期的類。常用的屬性有year, month, day;datetime.time:表示時(shí)間的類。常用的屬性有hour, minute, second, microsecond;datetime.datetime:表示日期時(shí)間。datetime.timedelta:表示時(shí)間間隔,即兩個(gè)時(shí)間點(diǎn)之間的長(zhǎng)度。datetime.tzinfo:與時(shí)區(qū)有關(guān)的相關(guān)信息。(這里不詳細(xì)充分討論該類,感興趣的童鞋可以參考python手冊(cè))
注 :上面這些類型的對(duì)象都是不可變(immutable)的。
下面詳細(xì)介紹這些類的使用方式。
date類
date類表示一個(gè)日期。日期由年、月、日組成(地球人都知道~~)。date類的構(gòu)造函數(shù)如下:
class datetime.date(year, month, day):參數(shù)的意義就不多作解釋了,只是有幾點(diǎn)要注意一下:
year的范圍是[MINYEAR, MAXYEAR],即[1, 9999];month的范圍是[1, 12]。(月份是從1開(kāi)始的,不是從0開(kāi)始的~_~);day的最大值根據(jù)給定的year, month參數(shù)來(lái)決定。例如閏年2月份有29天;
date類定義了一些常用的類方法與類屬性,方便我們操作:
date.max、date.min:date對(duì)象所能表示的最大、最小日期;date.resolution:date對(duì)象表示日期的最小單位。這里是天。date.today():返回一個(gè)表示當(dāng)前本地日期的date對(duì)象;date.fromtimestamp(timestamp):根據(jù)給定的時(shí)間戮,返回一個(gè)date對(duì)象;datetime.fromordinal(ordinal):將Gregorian日歷時(shí)間轉(zhuǎn)換為date對(duì)象;(Gregorian Calendar :一種日歷表示方法,類似于我國(guó)的農(nóng)歷,西方國(guó)家使用比較多,此處不詳細(xì)展開(kāi)討論。)
當(dāng)前文章:包含python系統(tǒng)時(shí)間函數(shù)的詞條
瀏覽地址:http://chinadenli.net/article8/doddjip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、小程序開(kāi)發(fā)、網(wǎng)站設(shè)計(jì)公司、動(dòng)態(tài)網(wǎng)站、、網(wǎng)站營(yíng)銷
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)