使用 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 generate_primes(limit):
    primes = []
    for n in range(2, limit + 1):
        if is_prime(n):
            primes.append(n)
    return primes

def save_to_file(primes, filename):
    with open(filename, 'w') as f:
        for prime in primes:
            f.write(str(prime) + '\n')

if __name__ == '__main__':
    limit = int(input('请输入数字上限:'))
    primes = generate_primes(limit)
    filename = input('请输入保存的文件名:')
    save_to_file(primes, filename)
    print('已成功保存为文件', filename)

代码解释:

  1. is_prime(n) 函数:

    • 该函数用于判断一个数是否为素数。
    • 如果 n 小于 2,则不是素数,返回 False
    • 从 2 开始,遍历到 n 的平方根,如果 n 能被任何数整除,则不是素数,返回 False
    • 如果遍历完所有数,n 都不能被整除,则 n 是素数,返回 True
  2. generate_primes(limit) 函数:

    • 该函数用于生成指定范围内的所有素数。
    • 初始化一个空列表 primes
    • 从 2 开始,遍历到 limit,如果 n 是素数,则将 n 添加到 primes 列表中。
    • 最后返回 primes 列表。
  3. save_to_file(primes, filename) 函数:

    • 该函数用于将素数列表保存到文本文件中。
    • 以写入模式打开文件 filename
    • 遍历 primes 列表,将每个素数转换为字符串并写入文件,并在每个素数后面添加换行符。
  4. if __name__ == '__main__' 语句:

    • 当程序直接运行时,该语句块内的代码会被执行。
    • 用户输入数字上限 limit 和保存文件名 filename
    • 调用 generate_primes 函数生成素数列表。
    • 调用 save_to_file 函数将素数列表保存到文件中。
    • 打印提示信息,告知用户已成功保存文件。

使用示例:

假设用户输入数字上限为 100,保存文件名为 primes.txt,程序将生成 1 到 100 之间的素数并保存到 primes.txt 文件中。

总结:

以上代码展示了如何使用 Python 生成指定范围内的所有素数并保存到文本文件。代码逻辑简单易懂,适合初学者学习。您可以根据需要修改代码,例如设置不同的数字上限或保存文件名。

Python 生成素数并保存到文件

原文地址: https://www.cveoy.top/t/topic/odAM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录