main()函数似乎不起作用

我是Python的新手,我正在使用Python 3.3.2。 我跑了下面的代码:

import sys def random(size=16): return open(r"C:\Users\ravishankarv\Documents\Python\key.txt").read(size) def main(): key = random(13) print(key) 

并期望它在密钥文件中打印内容。 该程序在IDLE上运行没有错误,但没有任何反应。 密钥不打印。

有人可以帮忙吗?

你根本没有调用你的主函数,所以Python解释器不会为你调用它。

添加这个作为最后一行,只要有它在任何时候调用:

 main() 

如果你使用常见的:

 if __name__ == "__main__": main() 

它会确保你的主要方法只有当这个模块被作为Python解释器的起始代码执行时才会被调用,更多的关于这里的讨论: if __name__ ==“__main__”:do?

如果你想知道如何编写最好的“main”函数, Guido van Rossum(Python的创build者)在这里写下了它。

Python不像自动调用main()函数的其他语言。 你所做的一切都是定义你的function。

你必须手动调用你的主要function:

 main() 

另外,你可能经常在一些代码中看到这个:

 if __name__ == '__main__': main() 

python中没有这样的main方法,你需要做的是:

 if __name__ == '__main__': main() 

你正在定义一个函数,但从来没有调用它。 因此你没有错误,但没有任何反应。 添加这个添加结束,它将工作:

 if __name__ == "__main__": main() 

你不是在调用这个函数。 将main()放在代码的底部。