import setuptools
setuptools.setup(name="tyobata_package",version="1.0.0",packages=setuptools.find_packages())
from fileA import classA as class_a
from fileB import classB as class_b
#ここにこのフォルダーに定義しているクラス名を列挙する
__all__ = ['class_a', 'class_b']
python setup.py develop
python setup.py bdist_wheel
詳細は以下から
プロジェクトのパッケージングと配布 — Python Packaging User Guide ドキュメント
import setuptools
# ReadMe.md取得のサンプル================================
import pathlib
here = pathlib.Path(__file__).parent.resolve()
long_description = (here / 'README.md').read_text(encoding='utf-8')
#================================================
setuptools.setup(
name="パッケージ名",#必須
version="バージョン(PEP 440に準拠)",#必須
author="著者",#オプション
author_email="著者のメールアドレス",#オプション
description="1行概要",#オプション
long_description="1行以上の概要(ReadMe的な)",#オプション
long_description_content_type="text/markdown(long_descriptionがmarkdownであることを示す)",#オプション
url="プロジェクトのメインホームページ",#オプション
packages=setuptools.find_packages(),#必須 ※3
classifiers=[
"Programming Language :: Python :: 3.8.5",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
],#オプション ※1
keywords='プロジェクトのキーワードを入力,PiPy用?',#オプション
package_dir={'': 'src'}, #オプション ※2
python_requires='サポートしているPythonのバージョンを指定できる',#オプション ※4
install_requires=['依存している他のパッケージ'],#オプション ※10
extras_require={
'dev': ['check-manifest'],
'test': ['coverage'],
},#オプション ※5
package_data={'sample': ['package_data.dat'],},#オプション ※6
data_files=[('my_data', ['data/data_file'])],#オプション ※7
entry_points={'console_scripts': ['sample=sample:main',],},#オプション ※8
project_urls={'Bug Reports':'プロジェクトに',
'Funding':'関連する追加の',
'Say Thanks!':
'URLをdictとして',
'Source': 'リストアップする',
},#オプション ※9
)
PiPy用?ユーザー側でプロジェクトの分類・検索用のもの。詳細は以下
*https://pypi.org/classifiers/*
ソースがプロジェクトのルート以下のサブディレクトリにある時(ex:src/.) の場合は package_dir の引数を指定する。