>  기사  >  백엔드 개발  >  속도와 정확성을 위해 Python 소수 생성기를 어떻게 최적화할 수 있나요?

속도와 정확성을 위해 Python 소수 생성기를 어떻게 최적화할 수 있나요?

DDD
DDD원래의
2024-11-11 04:27:03942검색

How can I optimize my Python prime number generator for speed and accuracy?

Python의 소수 생성기

이 Python 코드는 소수 생성을 목표로 하지만 최적의 기능을 위해서는 일부 조정이 필요합니다.

수정된 코드 아래:

import math

def main():
    count = 3

    while True:
        is_prime = True

        for x in range(2, int(math.sqrt(count) + 1)):
            if count % x == 0:
                is_prime = False
                break

        if is_prime:
            print(count)

        count += 1

문제 및 수정 사항:

  1. 인쇄 문제: 원래 코드가 인쇄되지 않은 경우에도 개수가 인쇄됩니다. 초기. 이는 소수를 보장하지 않는 if count % x != 0 조건으로 인쇄했기 때문입니다. 수정된 코드는 is_prime이 True인 경우에만 인쇄합니다.
  2. 루프 제어: 원래 코드의 continue 문은 조건이 충족되었을 때 루프 반복을 건너뛰었지만 다음을 사용하여 반복을 종료해야 합니다. break를 눌러 다음 숫자를 처리하세요.
  3. 효율성: 수동으로 각 숫자의 분할 가능성을 확인할 수 있습니다. 많은 수에는 비효율적입니다. 수정된 코드는 소수 생성에 훨씬 효율적인 에라토스테네스의 체를 사용하고 있습니다.

위 내용은 속도와 정확성을 위해 Python 소수 생성기를 어떻게 최적화할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.