Я хочу преобразовать эти выходные данные в список - PullRequest
0 голосов
/ 28 апреля 2020

Я Python новичок.

Я получил простое число в указанном диапазоне. Однако я не смог преобразовать его в список.

Я также попытался преобразовать его в строку и вернуться к списку.

import random

lower = int(input("Enter lower range: "))  
upper = int(input("Enter upper range: "))  

for num in range(lower,upper + 1):  
   if num > 1:  
       for i in range(2, num):  
           if (num % i) == 0:  
               break  
       else:
         print(num)

1 Ответ

1 голос
/ 28 апреля 2020

Начните с пустого списка, и каждый раз, когда вы найдете простое число, добавляйте его в список. Затем вы можете напечатать список в конце:

nums = []
for num in range(lower,upper + 1):  
   if num > 1:  
       for i in range(2, num):  
           if (num % i) == 0:  
               break  
       else:
           nums.append(num)

print(nums)

Обратите внимание, что вам нужно только итерировать до квадрата root из num, любой фактор за пределами которого может иметь только другой фактор, который меньше чем это:

from math import sqrt

nums = []
for num in range(lower,upper + 1):  
   if num > 1:  
       for i in range(2, int(sqrt(num))):  
           if (num % i) == 0:  
               break  
       else:
           nums.append(num)

print(nums)
...