由於時間模塊提供了各種與時間有關的函數。因此,有必要導入時間模塊,否則會出錯,因為時間模塊中存在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.我們可以計算浮點數和整數時間值(以秒和納秒為單位)。
相關用法
- Python int()用法及代碼示例
- Python oct()用法及代碼示例
- Python now()用法及代碼示例
- Python dir()用法及代碼示例
- Python hex()用法及代碼示例
- Python tell()用法及代碼示例
- Python sum()用法及代碼示例
- Python map()用法及代碼示例
- Python id()用法及代碼示例
- Python ord()用法及代碼示例
- Python cmp()用法及代碼示例
- Python fsum()用法及代碼示例
注:本文由純淨天空篩選整理自YashKhandelwal8大神的英文原創作品 time.perf_counter() function in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。