PEP 8建议在程序开始时导入模块。
现在,我觉得在 main 程序的开头(即在 if __name__ == '__main__'
之后)导入其中一些是有意义的。例如,如果主程序从命令行读取参数,我倾向于在 main 程序的开头执行 import sys
:这样,sys
当代码用作模块时不必导入,因为在这种情况下不需要命令行参数访问。
这种违反 PEP 8 的行为有多严重?我应该避免这样做吗?或者修改 PEP 8 是否合理?
最佳答案
我真的无法告诉你这样做有多糟糕。
但是,通过仅在第一次使用时导入某些库,我大大提高了网络应用程序的性能(响应时间、负载)。
顺便说一句,以下内容也来自 PEP 8:
But most importantly: know when to be inconsistent -- sometimes the style guide just doesn't apply. When in doubt, use your best judgment. Look at other examples and decide what looks best. And don't hesitate to ask!
关于Python:在主程序和 PEP 8 的开头导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1565173/