-3

我是学习 Python 和使用 Eclipse + PyDev 的新手。我似乎无法弄清楚为什么我的程序没有运行。

这是我的代码:

def main():
    print("Testing")
    test1 = float(input("Test1: "))
    test2 = float(input("Test2: "))
    test3 = float(input("Test3: "))
    calculate_cost (test1, test2, test3)

def calculate_cost (test1, test2, test3):
    print("Testing")

我假设我在一个或两个函数中遗漏了一些东西以使其正常运行。

4

2 回答 2

6

这是 Python,而不是 C/C++,main()不是您程序的入口点,您必须手动调用该函数。只需调用它:

# your code
# ...
main()

如果您想防止在从其他地方导入时调用您的代码,那么您想使用:

# your code
# ...
if __name__ == '__main__':
    main()

这个问题:做什么if __name__ == “__main__”:解释了最后一个块。

于 2013-09-29T15:14:06.867 回答
3

与其他一些语言不同,没有强制执行main程序执行时调用函数的约定。在 Python 中,您必须手动执行此操作。这意味着您必须main()在脚本的底部添加 a 才能main执行您的函数。

一个常见的模式是使用以下内容:

if __name__ == '__main__`:
    main()

这将main在脚本直接运行时执行该函数,但在脚本作为模块导入其他地方时阻止其执行。有关该部分的更多详细信息,请参阅此问题

于 2013-09-29T15:15:00.363 回答