Python 中怎么修改一下下面的函数打印出来1-100的素数


import math #判断素数 
a=int(input("请输入第一个数字"))
def prime(a):
    ind = True
    if a < 2:
        print('请输入一个正常数字')
    elif (1-isinstance(a, int)):
        print('请输入一个正常数字')
    else:
        for i in range(2,int(math.sqrt(a))+2):
            if a % i == 0:
                ind = False
        return ind
print(prime(a))

小学知识,素数从2开始,不知道楼上的条件为什么这么写?


import math

def prime(a):
    ind = True
    if a < 2:
        ind = False
    elif (1 - isinstance(a, int)):
        ind = False
    else:
        for i in range(2, int(math.sqrt(a)) + 1):
            if a % i == 0:
                ind = False
                break
    return ind

for i in range(1, 101):
    if prime(i):
        print(i)

15行加个循环就行了,prime(a)返回True则输出

for i in range(1,101):
    print(i if prime(i) else '',end=' ')