Заметки:
- Я использую Python v3.6
- Я прочитал документацию по модулям и пакетам.
- Я прочитал и прошел через руководство по проекту упаковки.
- Я просмотрел пример проекта (отличается от учебного проекта)
У меня есть простой пакет, который я хочу сделать
myPackage/ The project directory
myPackage/ Top-level package
__init__.py Initialize my package
myClass.py a file with a single class in it
setup.py
README.md
...
dist/
где myClass.py
просто
class myClass:
__init__(self):
print('here')
и мой файл myPackage/__init__.py
такой же, как демо
name = "myPackage"
Я успешно получил его на pypi, и pip установил его.
Я могу import myPackage
, но в отличие от туториала, где
example_pkg.name
работает,
myPackage.name
не.
Приведенный выше пример проекта не совсем точно описывает файл init.py.
Итак, мой вопрос заключается в следующем:
предположим, что у кого-то был такой пакет в документации для модулей и пакетов:
sound/ Top-level package
__init__.py Initialize the sound package
formats/ Subpackage for file format conversions
__init__.py
wavread.py
wavwrite.py
aiffread.py
aiffwrite.py
auread.py
auwrite.py
...
effects/ Subpackage for sound effects
__init__.py
echo.py
surround.py
reverse.py
...
filters/ Subpackage for filters
__init__.py
equalizer.py
vocoder.py
karaoke.py
...
где находится фактическая файловая структура (следуя руководству по проекту упаковки)
sound/
sound/ (Top-level package)
__init__.py
...
dist/
build/
sound.egg/
README.md
...
Что входит в sound/__init__.py
(или myPackage/__init__.py
), чтобы я мог импортировать его и получить доступ к его функциям, подмодулям и классам?
Извините за то, что я нуб в упаковке Python.
# contents of setup.py
import setuptools
with open("README.md", "r") as fh:
long_description = fh.read()
setuptools.setup(
name="progil",
version="0.0.4",
author="name",
author_email="name@web",
description="Progress In Line",
long_description=long_description,
long_description_content_type="text/markdown",
url="https://pypi.org/project/progil/",
packages=setuptools.find_packages(),
classifiers=[
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
],
)
myClass.py
файл точен? Вы пропустилиclass
ключевое слово. - person Chris   schedule 31.08.2018myPackage.name
AttributeError
? Он содержитNone
? Пустая строка? - person Chris   schedule 31.08.2018