我是 Python 的新手,我还没有想出在多个代码文件和文件夹中分离代码的简单方法。
我今天所做的是:为每个文件夹创建一个 __init__.py
文件。有时它是空的。我不知道我为什么要这样做,但这似乎是必要的。这是与使用 C# 的第一个区别。
第二个区别是,要使任何文件引用任何其他文件,我必须使用导入,例如 from model.table import Table
。如果我有多个引用,我需要使用多个导入:
from model import table1,table2
然后在其余代码中,我必须为每个示例使用 table1.Table1
。如果我不想,我应该
from model.table1 import Table1
from model.table2 import Table2
然后我可以简单地使用 Table1
这与我在 C# 中习惯的做法有很大不同,在 C# 中,如果所有文件都在同一个命名空间中,我们就不必import
。有没有更简单的方法?
最佳答案
您应该阅读模块:http://docs.python.org/tutorial/modules.html
基本上,我认为您没有正确组织代码。在 Python 中,目录和文件是有意义的;这不仅仅是您写入文件的内容。对于每个新目录(使用 __init__.py
)和每个新文件,您都会创建一个新的“命名空间”...
如果你有文件 /mydatabase/model.py
以及在该 model.py
文件中定义的 Table1
、Table2
等,您可以简单地:
from mydatabase.model import *
不要为每个 Table
类创建一个新文件!
关于python - 在 Python 中处理多个代码文件和文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6011322/