开发 Python 包
James Fulton
Climate informatics researcher
在 mysklearn 的 setup.py 中
setup(
...
classifiers=[
'Development Status :: 2 - Pre-Alpha',
'Intended Audience :: Developers',
'License :: OSI Approved :: MIT License',
'Natural Language :: English',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
],
...
)
mysklearn/
...
|-- README.md
|-- setup.py
|-- Makefile <---
...
在 Makefile 中
... dist: ## 构建源码包与轮子包 python3 setup.py sdist bdist_wheelclean-build: ## 移除构建产物 rm -fr build/ rm -fr dist/ rm -fr .eggs/test: ## 用默认 Python 快速运行测试 pytestrelease: dist ## 打包并上传发布版 twine upload dist/*
make <function-name>
mysklearn/ <--- 先进入此目录
...
|-- README.md
|-- setup.py
|-- Makefile
...
在终端中运行 dist 功能
make dist
在 Makefile 中
...
dist: ## 构建源码包与轮子包
python3 setup.py sdist bdist_wheel
clean-build: ## 移除构建产物
rm -fr build/
rm -fr dist/
rm -fr .eggs/
test: ## 用默认 Python 快速运行测试
pytest
release: dist ## 打包并上传发布版
twine upload dist/*
make help
clean 移除所有构建、测试、覆盖率与 Python 产物
clean-build 移除构建产物
clean-pyc 移除 Python 文件产物
clean-test 移除测试与覆盖率产物
lint 使用 flake8 检查风格
test 用默认 Python 快速运行测试
test-all 用 tox 在所有 Python 版本上运行测试
release 打包并上传发布版
dist 构建源码包与轮子包
install 安装到当前 Python 的 site-packages
开发 Python 包