为什么导入我自己的模块后 python 显示 'In:'

Why python show 'In:' after import my own module

我试图在 Python 3.5 中导入我自己的模块。在导入之前,我将路径添加到 sys.path,但仍然存在 'In:'。 'In'后应该输入什么?我试过输入路径,但是不行。

这是我的模块的代码。这是一个简单的测试,我只是想学习如何在 Python.

中导入自己的模块
import ipdb
'list mulitiple'
def prod(l):
    length = len(l)
    if length == 1:
        return l[1]
    else:
        result = 1
        for i in l:
            result *= i
    return result

if __name__ == '__main__':
    l = [1,2,3,4,5,6]
    print(prod(l))

如果你也能帮我永久添加 pythonpath,那就太好了。我在系统路径中更改了'pythonpath',但似乎不对...

您的模块已导入。但是 if __name__=="__main__" 块中的代码不会 运行 当你的模块被导入时,只有当你直接 运行 模块时。 (这就是 if __name__=="__main__" 块的目的。)所以导入你的模块并没有做任何明显的事情;它加载了您的函数但没有调用它。

因为看起来您正在使用 IPython,您可以使用 %run 魔术命令 运行 您的文件,如 here 所述。

如果您正在交互式工作,通常您宁愿只导入您的文件,然后从交互式 shell 中使用它。例如,在导入它之后,您现在可以 mymath.prod([1, 2, 3, 4, 5, 6]) 调用您的函数,就像使用任何普通库模块一样。