python time.time和time.clock_Python中time.clock和 time.time的对比探究
在對(duì)于程序運(yùn)行時(shí)間的討論上,我們有兩種函數(shù)可以使用:time和clock。主要區(qū)分是前者為程序的運(yùn)行時(shí)間,后者是運(yùn)行程序cpu所花費(fèi)的時(shí)間。在理解了二者的不同后,我們就它們的使用效率做一個(gè)對(duì)比,看看哪種方法花費(fèi)的時(shí)間最少。具體的內(nèi)容在下方分享,我們一起看看都有哪些。
1.概念不同
time.time()是統(tǒng)計(jì)的wall time(即墻上時(shí)鐘),也就是系統(tǒng)時(shí)鐘的時(shí)間戳(1970紀(jì)元后經(jīng)過(guò)的浮點(diǎn)秒數(shù))。所以兩次調(diào)用的時(shí)間差即為系統(tǒng)經(jīng)過(guò)的總時(shí)間。
time.clock()是統(tǒng)計(jì)cpu時(shí)間的工具,這在統(tǒng)計(jì)某一程序或函數(shù)的執(zhí)行速度最為合適。兩次調(diào)用time.clock()函數(shù)的差值即為程序運(yùn)行的cpu時(shí)間。
2.使用不同
如果在兩次調(diào)用之間將系統(tǒng)時(shí)鐘調(diào)回,則time.time可能會(huì)返回一個(gè)較小的值,而time.clock則返回的值未增長(zhǎng)。clock()
import?time
#?創(chuàng)建列表推導(dǎo)式時(shí)間開(kāi)銷
time.clock()
list_?=?[x?for?x?in?range(0,?1000000,?2)]
lt?=?time.clock()
print(f'創(chuàng)建列表推導(dǎo)式時(shí)間開(kāi)銷:{lt}')
#?運(yùn)行結(jié)果:
創(chuàng)建列表推導(dǎo)式時(shí)間開(kāi)銷:0.0389006
time()import?time
#?創(chuàng)建列表推導(dǎo)式時(shí)間開(kāi)銷
start?=?time.time()
list_?=?[x?for?x?in?range(0,?1000000,?2)]
end?=?time.time()
print(f'創(chuàng)建列表推導(dǎo)式時(shí)間開(kāi)銷:{end?-?start}')
#?運(yùn)行結(jié)果:
創(chuàng)建列表推導(dǎo)式時(shí)間開(kāi)銷:0.03390932083129883
以上就是Python中time.clock和 time.time的對(duì)比探究,可以發(fā)現(xiàn)time函數(shù)的速度要略微快于clock,也就是說(shuō)cpu的運(yùn)行要比程序整體運(yùn)行快一些。
總結(jié)
以上是生活随笔為你收集整理的python time.time和time.clock_Python中time.clock和 time.time的对比探究的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: mysql 怎么查询结果补0_mysql
- 下一篇: java 调用父类的变量_java创建子