개발자

파이썬에서 한 파일에 함수를 생성하는 것보다 별도의 파일에 함수를 생성해서 불러오는 것이 더 빠른 이유?

2023년 09월 04일조회 78

main.py import time as t s = t.time() def a(): for i in range(n): i += i a() print(f'e1 = {t.time() - s}s') s = t.time() import b b.b() print(f'e2 = {t.time() - s}s') b.py def b(): for i in range(n): i += i 여기서 n이 10,000, 100,000, 10,000,000 일 때는 main의 a함수의 처리 속도가 더 빠른데 n이 100,000,000이상이 되면 b처럼 함수를 별도의 파일로 분리하였을 때 처리 속도가 더 빠른 이유가 무엇일까요? 측정 시간 : n = 10,000 - a : 0.00100 - b : 0.00899 n = 100,000 - a : 0.01002 - b : 0.01997 n = 1,000,000 - a : 0.10102 - b : 0.11099 n = 10,000,000 - a : 0.99099 - b : 0.99199 n = 100,000,000 - a : 9.80203 - b : 9.67901 n = 500,000,000 - a : 50.55250 - b : 49.19553 측정 시간 동안은 아무런 움직임도 없이 실행 시키고 결과가 모두 나올 때까지 가만히 있었습니다. python 3.10.10에서 테스트 했습니다. 왜 이런 결과가 나오는지 궁금합니다!!!

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 1

김대근님의 프로필 사진

제가 보기에 연관성은 없어보이는데 테스트를 a랑 b의 순서를 바꿔서 해보시겠어요? 파이썬외에 다른언어에서도 반복문 처리시 항상 동일한 결과가 나오지는 않습니다 😀

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!