Python에서 소수를 결정하는 방법

coldplay.xixi
풀어 주다: 2023-01-03 09:28:51
원래의
42529명이 탐색했습니다.

파이썬에서 소수를 판단하는 방법: 먼저 파이썬의 수학 함수를 사용한 다음 한 줄 프로그램에서 소수를 스캔합니다. 코드는 [[ p for p in range(2, N) if 0 not in [ p% d for d in range(2, int(sqrt(p)].

Python에서 소수를 결정하는 방법

이 튜토리얼의 운영 환경: 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
로그인 후 복사

방법 2:

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!