programing

파이썬에서 %time은 무엇입니까?

newsource 2023. 7. 19. 21:22

파이썬에서 %time은 무엇입니까?

나는 항상 다음과 같이 시간을 계산하기 위해 코드를 읽습니다.

%timeit function()

여기서 "%"는 무엇을 의미합니까?

"%"는 항상 문자열의 어떤 것을 바꿀 때 사용되는 것 같습니다. 예를 들어 %s은 문자열을 바꾸고 %d은 데이터를 바꿉니다. 하지만 저는 이 경우에 대해 전혀 모릅니다.

%timeit 는 특정 코드 조각(단일 실행 문 또는 단일 메서드)의 시간을 지정하는 데 사용할 수 있는 IPython 매직 함수입니다.

설명서에서 다음을 참조하십시오.

%timeit

Python 문 또는 식의 시간 실행

라인 모드에서의 사용량:

%timeit [-n<N> -r<R> [-t|-c] -q -p<P> -o] statement

사용하기 위해, 예를 들어, 사용 여부를 확인하려는 경우xrange를 사용하는 것보다 더 빠릅니다.range간단히 수행할 수 있는 작업:

In [1]: %timeit for _ in range(1000): True
10000 loops, best of 3: 37.8 µs per loop

In [2]: %timeit for _ in xrange(1000): True
10000 loops, best of 3: 29.6 µs per loop

그리고 당신은 그들을 위한 시간을 얻을 것입니다.

의 주요 장점%timeit다음과 같습니다.

  • 가져올 필요가 없습니다.timeit.timeit 표준 라이브러리에서 코드를 여러 번 실행하여 어떤 접근 방식이 더 나은지 확인합니다.

  • 총 2초의 실행 시간을 기준으로 코드에 필요한 실행 횟수를 자동으로 계산합니다.

  • 현재 콘솔 변수를 암시적으로 사용할 수 있지만,timeit.timeit명시적으로 제공해야 합니다.

이것은 IPython에서 라인 매직으로 알려져 있습니다.그들의 주장은 현재 줄의 끝까지만 확장된다는 점에서 독특하며, 마법 자체는 실제로 명령줄 개발을 위해 구성되어 있습니다. timeit코드 실행 시간을 지정하는 데 사용됩니다.

사용할 수 있는 마법을 모두 보려면 다음을 입력하면 됩니다.

%lsmagic

라인 매직과 셀 매직의 목록을 모두 가져옵니다.

설명서의 몇 가지 추가 마법 정보는 다음과 같습니다.

IPython에는 파이썬의 구문과 직교하고 사용자가 새 명령으로 확장할 수 있는 미니 명령어를 효과적으로 제공하는 매직이라고 하는 명령 시스템이 있습니다.매직은 대화형으로 입력하도록 고안되었으므로 인수를 구분하기 위해 공백을 사용하고, 옵션을 위해 대시를 사용하며, 명령줄 환경에서 일반적인 기타 규칙을 사용합니다.

라인 모드인지 셀 모드인지에 따라 두 가지 사용 방법이 있습니다.%timeit당신의 질문은 첫 번째 방법을 설명합니다.

In [1]: %timeit range(100)

대.

In [1]: %%timeit
      : x = range(100)
      :

%% 시간에 대한 매우 미묘한 점: 에서 "마법"을 실행하면 오류가 발생합니다.

: 함수 UsageError : 법마기라인능%%timeit 수 없음

...%를 초과하는 코드/슬롯 라인이 있는 경우 이 값의 %%를 초과합니다.즉, %% 시간이 셀의 첫 번째 명령인지 확인합니다.

아이피톤이 그것들을 가로채요.이러한 명령어를 내장 마법 명령어라고 하며, 다음과 같은 목록이 있습니다.내장된 마법 명령입니다.

사용자 지정 마법 정의라는 사용자 지정 마법을 직접 만들 수도 있습니다.

당신의.timeit위치: %time it

줄 매직 % 문자로 접두사가 붙고 OS 명령줄 호출과 매우 유사하게 작동합니다. 줄의 나머지 부분에서 괄호나 따옴표 없이 인수를 전달합니다.셀마법은 이중 %%로 접두사가 붙으며, 나머지 줄뿐만 아니라 다른 인수에서 줄 아래 줄도 인수로 얻는 함수입니다.

언급URL : https://stackoverflow.com/questions/29280470/what-is-timeit-in-python