python输出素数的代码

以下是Python输出素数的代码:

def is_prime(n):
    """
    判断一个数是否为素数
    """
    if n < 2:
        return False
    for i in range(2, int(n ** 0.5) + 1):
        if n % i == 0:
            return False
    return True

def print_prime(n):
    """
    输出小于等于n的所有素数
    """
    for i in range(2, n + 1):
        if is_prime(i):
            print(i)

# 测试
print_prime(100)

输出结果:

2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97

以下是另一种输出素数的代码:

def print_prime(n):
    """
    输出小于等于n的所有素数
    """
    primes = []
    for i in range(2, n + 1):
        is_prime = True
        for j in range(2, int(i ** 0.5) + 1):
            if i % j == 0:
                is_prime = False
                break
        if is_prime:
            primes.append(i)
    print(primes)

# 测试
print_prime(100)

输出结果:

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]

这个代码和之前的代码不同之处在于,它使用了一个列表来存储所有的素数,最后一次性输出。这种方法可能会占用更多的内存,但是可以避免在循环中频繁地输出结果,提高代码的效率。