[英]Organizing source code in python
我正在寫一個游戲框架。 這是我目前的文件結構:
src/
framework/
__init__.py
util.py
render.py
game.py
pong.py
我希望能夠直接從pong.py
文件中import game
或import render
。 實現這一目標的最佳方法是什么? 最初, util.py, render.py, game.py
模塊位於src
文件夾中,但為了組織起見,我決定將它們放入單獨的文件夾中。 我對包裝慣例很新,所以我不知道這是否是推薦的做事方式。
最好的辦法就是不要這樣做。 正是出於原因,你首先將它們移動 - 組織起見 - 你會希望它們在一個單獨的模塊中。 如果要在代碼中將模塊稱為game
,則可以執行以下操作:
from framework import game
game.foo()
通常,當您進行import game
,您希望game
可以是系統庫,也可以是腳本運行的文件夾。 如果不是這樣的話,就會讓人失望。 如果你要使你的框架成為一個系統庫,你就不會將它作為三個獨立的庫util
, game
和render
,不是嗎? 您將它打包在一個庫 - framework
- 並使用子模塊分發它。 因此,你真的不想這樣做。
但是,正如我所知,非答案可能令人沮喪,如果你真的想要繼續,你可以將framework
文件夾添加到sys.path
,每當你導入模塊時python都會檢查:
import sys
sys.path.append("framework")
import game
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.