當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python time.perf_counter()用法及代碼示例


由於時間模塊提供了各種與時間有關的函數。因此,有必要導入時間模塊,否則會出錯,因為時間模塊中存在perf_counter()的定義。

perf_counter()函數始終以秒為單位返回時間的浮點值。返回性能計數器的值(以分數秒為單位),即具有最高可用分辨率的時鍾以測量短時間。它確實包括睡眠期間經過的時間,並且為system-wide。返回值的參考點是不確定的,因此僅連續調用結果之間的差有效。在這之間,我們可以使用time.sleep()和類似的函數。

代碼1:了解perf_counter的用法。


# Python program to show time by perf_counter()  
from time import perf_counter 
  
# integer input from user, 2 input in single line 
n, m = map(int, input().split())  
  
# Start the stopwatch / counter 
t1_start = perf_counter()  
  
for i in range(n):
    t = int(input()) # user gave input n times 
    if t % m == 0:
        print(t)  
  
# Stop the stopwatch / counter 
t1_stop = perf_counter() 
  
print("Elapsed time:", t1_stop, t1_start)  
  
  
print("Elapsed time during the whole program in seconds:", 
                                        t1_stop-t1_start)

輸出:

pref_counter_ns():
它始終以納秒為單位給出時間的整數值。與perf_counter()相似,但返回時間以納秒為單位。

代碼2:perf_counter_ns的用法以及如何實現。

# Python program to show time by 
# perf_counter_ns() 
from time import perf_counter_ns 
  
# integer input from user, 2 input in single line 
n, m = map(int, input().split())  
  
# Start the stopwatch / counter 
t1_start = perf_counter_ns() 
  
for i in range(n):
    t = int(input()) # user gave input n times 
    if t % m == 0:
        print(t) 
  
# Stop the stopwatch / counter 
t1_stop = perf_counter_ns() 
  
print("Elapsed time:", t1_stop, 'ns', t1_start, 'ns')  
  
print("Elapsed time during the whole program in ns after n, m inputs:", 
       t1_stop-t1_start, 'ns')

輸出:

比較程序的兩個輸出,因為perf_counter()以秒為單位返回,pers_counter_ns()以納秒為單位返回。

perf_counter()的優點:
1. perf_counter()會比time.clock()函數。
2.從Python3.8開始,將刪除clock()函數,並使用perf_counter。
3.我們可以計算浮點數和整數時間值(以秒和納秒為單位)。



相關用法


注:本文由純淨天空篩選整理自YashKhandelwal8大神的英文原創作品 time.perf_counter() function in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。