すべての__init__.py
ファイルが空の場合、それらをバージョン管理に保存する必要がありますか? または、インストール中にdistutils
空のファイルを作成する方法はありますか?__init__.py
2 に答える
Python では、__init__.py
ファイルには実際に意味があります。それらは、それらが入っているフォルダーが Python モジュールであることを意味します。そのため、これらはコード内で実際の役割を果たしており、おそらくバージョン管理に保存する必要があります。
Python モジュールではないソース ツリー内のフォルダー、たとえば、リソース (画像など) のみを含み、コードを含まないフォルダーを想像することができます。__init__.py
そのフォルダーにファイルを入れる必要はありません。distutils がそれらのファイルを作成する必要があるフォルダーと作成しないフォルダーをどのように区別しますか?
バージョン管理に空のファイルを入れたくない理由はありますか? __init__.py
これを行うとimport
、最初にdistutilsを実行しないと、ソースディレクトリからパッケージにアクセスできなくなります。
本当にしたいのなら、で作成できると思い__init__.py
ますsetup.py
。を実行する前に実行する必要があるdistutils.setup
ため、それsetup
自体がパッケージを見つけることができます。
from distutils import setup
import os
for path in [my_package_directories]:
filename = os.path.join(pagh, '__init__.py')
if not os.path.exists(filename):
init = open(filename, 'w')
init.close()
setup(
...
)
__init__.py
しかし...そもそもそこに空のファイルがある場合と比較して、これから何が得られますか?