Обычно вы импортируете имя модуля. Например, ваш пакет может быть разработан в следующей иерархии:
MyLib
- __init__.py
- my_script1.py
- my_script2.py
Однако, когда вы делаете свою библиотеку как «пакет», доступный в pip
, обычно вам нужно будет подготовить свой setup.py
файл, который будет автоматически запускаться, когда люди используют pip install
для установки вашего пакета.
setup.py
может быть примерно таким:
from distutils.core import setup
setup(
name = 'YOURPACKAGENAME', # How you named your package folder (MyLib)
packages = ['YOURPACKAGENAME'], # Chose the same as "name"
version = '0.1', # Start with a small number and increase it with every change you make
license='MIT', # Chose a license from here: https://help.github.com/articles/licensing-a-repository
description = 'TYPE YOUR DESCRIPTION HERE', # Give a short description about your library
author = 'YOUR NAME', # Type in your name
author_email = 'your.email@domain.com', # Type in your E-Mail
url = 'https://github.com/user/reponame', # Provide either the link to your github or to your website
download_url = 'https://github.com/user/reponame/archive/v_01.tar.gz', # I explain this later on
keywords = ['SOME', 'MEANINGFULL', 'KEYWORDS'], # Keywords that define your package best
install_requires=[ # I get to this in a second
'validators',
'beautifulsoup4',
],
classifiers=[
'Development Status :: 3 - Alpha', # Chose either "3 - Alpha", "4 - Beta" or "5 - Production/Stable" as the current state of your package
'Intended Audience :: Developers', # Define that your audience are developers
'Topic :: Software Development :: Build Tools',
'License :: OSI Approved :: MIT License', # Again, pick a license
'Programming Language :: Python :: 3', #Specify which pyhton versions that you want to support
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
],
)
Следовательно, в приведенном выше примере, люди, которые устанавливают ваш пакет через pip
, должны запускать pip install YOURPACKAGENAME
. После этого им нужно запустить в коде import MyLib
.
TD; DL:
То, что вы импортируете, - это имя модуля, но то, что вы установили через pip
, - это имя пакета, они могут быть разными. Но обычно я бы сказал, что мне нравится, когда люди используют одно и то же имя для обоих, чтобы избежать путаницы.
Ссылка: https://medium.com/@joel.barmettler / how-to-upload-your- python -package -to-pypi-65edc5fe9c56