반응형
예제가 있는 Python Timeit()
Python Timeit()이란 무엇입니까?
파이썬 timeit() 주어진 코드 조각에 의해 소요된 실행 시간을 측정하는 Python 라이브러리의 방법입니다. Python 라이브러리는 코드 문을 100만 번 실행하고 주어진 코드 조각 세트에서 가져온 최소 시간을 제공합니다. Python timeit()은 코드의 성능을 확인하는 데 도움이 되는 유용한 메서드입니다.통사론:
timeit.timeit(stmt, setup,timer, number)
매개변수
- stmt: 실행 시간을 측정하려는 코드를 사용합니다. 기본값은 "통과"입니다.
- 설정: stmt 전에 실행해야 하는 설정 세부 정보가 있습니다. 기본값은 "통과"입니다.
- 시간제 노동자: 이것은 타이머 값을 가질 것이고, timeit()에는 이미 기본값이 설정되어 있고, 우리는 그것을 무시할 수 있습니다.
- 숫자: stmt는 여기에 제공된 번호에 따라 실행됩니다. 기본값은 1000000입니다.
import timeit
첫 번째 예
다음은 timeit() 함수의 간단한 예입니다.코드 예 1:
# testing timeit()
import timeit
print(timeit.timeit('output = 10*5'))
산출:
0.06127880399999999
우리는 단순 코드 명령문 출력 = 10*5의 실행 시간을 제공하는 간단한 예를 보았고, 이를 실행하는 데 걸리는 시간은 0.06127880399999999입니다.
파이썬 코드에서 여러 줄 타이밍
timeit.timeit()에서 세미콜론을 사용하거나 삼중 따옴표로 묶인 문자열로 코드를 저장하여 여러 줄의 코드를 실행할 수 있는 두 가지가 있습니다. 다음은 그 작동을 보여주는 예입니다.예 1: 세미콜론 사용
import timeit
print("The time taken is ",timeit.timeit(stmt="a=10;b=10;sum=a+b"))
산출:
The time taken is 0.137031482
예 2: 삼중따옴표 사용
import timeit
import_module = "import random"
testcode=""'
def test():
return random.randint(10, 100)
'''
print(timeit.repeat(stmt=testcode, setup=import_module))
산출:
C:\pythontest>python testtimeit.py
The time taken is 0.182619178
timeit – 방법:
여기에 2가지 중요한 timeit 방법이 있습니다. timeit.default_timer() : 실행 시 기본 시간을 반환합니다. timeit.repeat(stmt, 설정, 타이머, 반복, 숫자) : timeit() 과 같지만 반복하면 timeit() 가 호출되는 반복 횟수가 주어집니다.프로그램 예 1:
# testing timeit()
import timeit
import_module = "import random"
testcode=""'
def test():
return random.randint(10, 100)
'''
print(timeit.timeit(stmt=testcode, setup=import_module))
산출:
0.46715912400000004
예 2:
default_timer() 예# testing timeit()
import timeit
import random
def test():
return random.randint(10, 100)
starttime = timeit.default_timer()
print("The start time is :",starttime)
test()
print("The time difference is :", timeit.default_timer() - starttime)
산출:
The start time is : 0.220261875
The time difference is : 0.0004737320000000045
예 3: timeit.repeat()
# testing timeit()
import timeit
import_module = "import random"
testcode=""'
def test():
return random.randint(10, 100)
'''
print(timeit.repeat(stmt=testcode, setup=import_module, repeat=5))
산출:
[0.43638873, 0.5040939680000001, 0.5069179909999999, 0.3943449330000002, 0.3546886979999999]
timeit.repeat()는 timeit.timeit() 함수와 유사하게 작동하지만 repeat 인수를 사용하고 실행 시간을 반복 횟수에 따른 값과 함께 배열 형식으로 반환한다는 차이점만 있습니다.
명령줄 인터페이스 내에서 타이밍 함수 timeit.timeit() 실행
명령줄의 timeit() 내에서 함수를 실행하는 구문은 다음과 같습니다.python -m timeit [-n N] [-r N] [-s S] [-t] [-c] [-h] [code statement ...]
명령줄 매개변수:
- -n N: 코드를 실행하려는 횟수.
- -r N: timeit() 함수가 반복되기를 원하는 횟수
- -s S: 코드 실행 전에 실행될 설정 세부 정보가 있습니다.
- -t: 이를 위해 time.time()을 사용할 수 있습니다.
- -c: 이를 위해 time.clock()을 사용할 수 있습니다.
- -h: 도움을 위해
- 코드 문: 코드 세부 정보입니다.
예시:
C:\pythontest>python -m timeit -s 'text="hello world"'
20000000 loops, best of 5: 13.1 nsec per loop
명령줄 내에서 실행할 수 있는 또 다른 방법은 다음과 같습니다.
예시 :
>>> import timeit
>>> print("The time taken is ",timeit.timeit(stmt="a=10;b=10;sum=a+b"))
The time taken is 0.15048536300000137
>>>
왜 timeit()가 Python 코드의 실행 시간을 측정하는 가장 좋은 방법입니까?
timeit()가 실행 시간을 측정하는 가장 좋은 방법이라고 생각하는 몇 가지 이유가 있습니다.- 기본값인 100만 번 코드 문을 실행하고 그 이후로 최소 소요 시간을 반환합니다. 시간() 함수에 인수 번호를 설정하여 100만을 늘리거나 줄일 수도 있습니다.
- 테스트를 수행하는 동안 시간() 함수에 의해 매번 가비지 수집이 비활성화됩니다.
- timeit() 내부적으로 사용 중인 운영 체제에 따라 정확한 시간이 걸립니다. 예를 들어 Windows 운영 체제의 경우 time.clock()을 사용하고 Mac 및 Linux의 경우 time.time()을 사용합니다.
요약
Timeit()는 주어진 작은 코드에 소요된 실행 시간을 얻는 데 사용됩니다. timeit()와 함께 사용되는 매개변수- stmt: 실행 시간을 측정하려는 코드를 사용합니다.
- setup: stmt 전에 실행해야 하는 설정 세부 정보가 있습니다.
- timer: 여기에는 타이머 값이 있고 timeit()에는 이미 기본값이 설정되어 있으므로 무시해도 됩니다.
- 번호: stmt는 여기에 제공된 번호에 따라 실행됩니다.
반응형
'Coding' 카테고리의 다른 글
ARKK: 버블은 이미 터졌다 - 밑바닥을 놓치지 말라 (0) | 2022.03.31 |
---|---|
예제가 있는 Python의 type() 및 isinstance() (0) | 2022.03.30 |
Python 코딩 목록에서 중복을 제거하는 방법 (0) | 2022.03.28 |
코딩을 배우면서 돈을 버는 방법 (나는 첫해 5천 달러를 벌었어!) (0) | 2022.03.27 |
애플 주가 전망 :: 아이폰 매출 증가로 인한 주가 상승 기회 (0) | 2022.03.26 |
댓글