导入旧功能时导入不起作用

时间:2017-01-29 19:15:18

标签: python-3.x

def isprime(n):
    for x in range(2, int(n/2+1)):
        if not n % x:
            return False

def primesto(n):
    for x in range(2, n):
        if isprime(x):
            print(x)

import prime

导入时出错:

ModuleNotFoundError: No module named 'prime' 

我想导入旧函数(primesto)和(isprime)。

这是否意味着如果我保存该程序,它将在另一个文件中工作?

1 个答案:

答案 0 :(得分:1)

使用您定义的两个函数:

def isprime(n):
    for x in range(2, int(n/2+1)):
        if not n % x:
            return False

def primesto(n):
    for x in range(2, n):
        if isprime(x):
            print(x)

您可以在同一个文件中调用它们:

isprime(3)

或者,如果要使用另一个文件中的函数,则应导入该文件。假设您将这两个函数保存在名为prime.py的文件中,那么您可以在另一个文件中执行以下操作:

import prime
# ...
prime.isprime(3)

或者您只能导入函数isprime,例如:

from prime import isprime 
# ...
isprime(3)

我希望现在更清楚,您可以在documentation about importing

中找到更多信息