문제는 표시하지 않은 코드의 일부입니다. 난 당신이 처음에 time
모듈을 수입한다고 가정하십시오 time
모듈을 참조하는 이름 time
를 생성
import time
합니다.
하지만 나중에 시간 차이를 저장하는 time
이라는 변수를 만듭니다. 이 시점에서 이름 time
은 모듈이 아니라 차이를 참조합니다. 따라서 time.process_time()
을 사용하려고하면 오류가 발생합니다.
>>> import time
>>> time = -(time.process_time() - time.process_time())
>>> time.process_time()
AttributeError: 'float' object has no attribute 'process_time'
당신이 time.process_time()
를 사용하여 주장하는 경우 가장 좋은 방법은 주위의 시간 차이 저장하는 변수의 이름을 변경하는 것입니다 :
measured_execution_time_insertionsort = start - end
을하지만 당신은 할 수
이 간단한 조각은 문제를 보여 time
모듈의 process_time
함수를 직접 가져 오십시오.
from time import process_time
start = process_time()
insertionsort(n)
end = process_time()
time = start - end
두 가지 방법 모두 이름 충돌을 피할 수 있습니다. 그러나 실행 시간을 측정하려면 timeit
모듈을 사용하는 것이 좋습니다. time
모듈보다 이러한 종류의 작업에 더 적합합니다.
이것이 문제입니다. 'time = start-end'는 표준 라이브러리와 같은 이름으로 변수 이름을 지정하지 않습니다. –