[英]Where should I put helper functions for scripts that utilize a common module?
我一直在開發一組Python腳本,為了簡化操作,使用我專門為這些腳本編寫的解析器來處理一組輸入文件。 該項目的設計通常如下所示:
/project/project/__init__.py
/project/project/parser.py
/project/project/helperfunctions.py
/project/preferences.ini
/project/script1.py
/project/script2.py
每個腳本都從helperfunctions.py
調用某些函數來執行諸如讀取首選項文件之類的任務,否則這些代碼必須為每個腳本重復。 解析器根本不使用幫助器功能。
但是,現在我決定,我想將項目用於解析器本身,同時仍將腳本放在一邊。 所以現在項目看起來像這樣:
/project/scripts/preferences.ini
/project/scripts/script1.py
/project/scripts/script2.py
/project/parser.py
/project/setup.py
我認為這是一個更簡潔的設計,但是問題是我不確定將這些輔助函數放在哪里。 我提出的想法是:
setup.py
安裝helperfunctions.py
。 我反對這樣做,因為輔助函數只是提供了與解析器無關的便捷方法。 /project/scripts/
,避開安裝。 我不喜歡這個主意,因為那會暗示helperfunctions.py
是腳本本身。 解決此問題的最Pythonic方法是什么?
一種選擇是將輔助函數放在__init__.py
,因此您以后可以在解析模塊中調用它們嗎?
我不知道您的函數有多復雜……它們只是函數還是助手類?
思維方式是從用戶的角度(解析器和那些輔助函數的角度)。 您(或任何人)將如何調用這些函數?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.