파이썬에서 소수를 판단하는 방법: 먼저 파이썬의 수학 함수를 사용한 다음 한 줄 프로그램에서 소수를 스캔합니다. 코드는 [[ p for p in range(2, N) if 0 not in [ p% d for d in range(2, int(sqrt(p)].
이 튜토리얼의 운영 환경: Windows 7 시스템, Python 버전 3.9, DELL G3 컴퓨터.
소수를 결정하는 Python 방법:
1. 파이썬 함수를 이용한 수학
import math def isPrime(n): if n <= 1: return False for i in range(2, int(math.sqrt(n)) + 1): if n % i == 0: return False return True
2. 소수를 스캔하는 단일 라인 프로그램
from math import sqrt N = 100 [ p for p in range(2, N) if 0 not in [ p% d for d in range(2, int(sqrt(p))+1)] ]
파이썬의 itertools 모듈 사용
from itertools import count def isPrime(n): www.jb51.net if n <= 1: return False for i in count(2): if i * i > n: return True if n % i == 0: return False
3. 방법 1:
def isPrime(n): if n <= 1: return False i = 2 while i*i <= n: if n % i == 0: return False i += 1 return True
def isPrime(n): if n <= 1: return False if n == 2: return True if n % 2 == 0: return False i = 3 while i * i <= n: if n % i == 0: return False i += 2 return True
예: 20001과 40001 사이의 소수(소수)를 찾아보세요1이나 자기 자신으로만 나눌 수 있으니 나머지가 2번 밖에 없다는 뜻입니다. 0. 코드는 다음과 같습니다.
#!/usr/bin/python L1=[] for x in xrange(20001,40001): n = 0 for y in xrange(1,x+1): if x % y == 0: n = n + 1 if n == 2 : print x L1.append(x) print L1
20011 20021 20023 20029 20047 20051 20063 20071 20089 20101 20107 20113 20117 20123 20129 20143 20147 20149 20161 20173 ….
관련 무료 학습 권장 사항:
python 비디오 튜토리얼위 내용은 Python에서 소수를 결정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!