0

すべての__init__.pyファイルが空の場合、それらをバージョン管理に保存する必要がありますか? または、インストール中にdistutils空のファイルを作成する方法はありますか?__init__.py

4

2 に答える 2

7

Python では、__init__.pyファイルには実際に意味があります。それらは、それらが入っているフォルダーが Python モジュールであることを意味します。そのため、これらはコード内で実際の役割を果たしており、おそらくバージョン管理に保存する必要があります。

Python モジュールではないソース ツリー内のフォルダー、たとえば、リソース (画像など) のみを含み、コードを含まないフォルダーを想像することができます。__init__.pyそのフォルダーにファイルを入れる必要はありません。distutils がそれらのファイルを作成する必要があるフォルダーと作成しないフォルダーをどのように区別しますか?

于 2008-09-13T09:19:56.330 に答える
4

バージョン管理に空のファイルを入れたくない理由はありますか? __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しかし...そもそもそこに空のファイルがある場合と比較して、これから何が得られますか?

于 2008-09-13T12:46:50.657 に答える