首页 > 解决方案 > 每行最多创建 8 个项目(python)

问题描述

我对python非常陌生。我已经用谷歌搜索了,但我几个小时都没有找到我需要的东西。

我很困惑为什么我的程序是这样的,并且非常感谢指针。所以这是我的程序:

number = int(input("Enter number: "))  
mylist = []  

if number > 1:
    for num in range(1,number + 1):  
        if num > 1:  
             for i in range(2,num): 
                  if (num % i) == 0:  
                      break                 
             else:  
                  mylist.append(str(num))
                  print(mylist)


else:
    print("no prime number")

因此,例如,如果我插入 50,我希望它具有以下输出:

['2', '3', '5', '7', '11', '13', '17', '19',
'23', '29', '31', '37', '41', '43', '47']

但相反,我得到的是这种混乱

['2']
['2', '3']
['2', '3', '5']
['2', '3', '5', '7']
['2', '3', '5', '7', '11']
['2', '3', '5', '7', '11', '13']
['2', '3', '5', '7', '11', '13', '17']
['2', '3', '5', '7', '11', '13', '17', '19']
['2', '3', '5', '7', '11', '13', '17', '19', '23']
['2', '3', '5', '7', '11', '13', '17', '19', '23', '29']
['2', '3', '5', '7', '11', '13', '17', '19', '23', '29', '31']
['2', '3', '5', '7', '11', '13', '17', '19', '23', '29', '31', '37']
['2', '3', '5', '7', '11', '13', '17', '19', '23', '29', '31', '37', '41']
['2', '3', '5', '7', '11', '13', '17', '19', '23', '29', '31', '37', '41', '43']
['2', '3', '5', '7', '11', '13', '17', '19', '23', '29', '31', '37', '41', '43', '47']

标签: pythonpython-3.x

解决方案


您的打印语句缩进不正确:

number = int(input("Enter number: "))  
mylist = []  

if number > 1:
    for num in range(1,number + 1):  
        if num > 1:  
             for i in range(2,num): 
                  if (num % i) == 0:  
                      break                 
             else:  
                  mylist.append(str(num))
    print(mylist)
else:
    print("no prime number")

推荐阅读