[英]How do I import and use my python package?
我正在嘗試發布和使用我創建的 package,這是目錄結構
my_package_folder
|
|-build
|-dist
|-setup.py
|-my_package_name
||
||-my_package_file.py
||-__init__.py
||
||-request_folder
|||
|||-request_file.py
|||-__init__.py
VERSION = '1.0.0'
DESCRIPTION = 'api package'
LONG_DESCRIPTION = 'longer package description'
# Setting up
setup(
name="my_package_settings_name",
version=VERSION,
author="John Smith",
author_email="<email@email.com>",
url='https://github.com/the-project/project-name',
description="api client package",
long_description="api client",
packages=find_packages(),
install_requires=[],
keywords=['python'],
classifiers=[
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"Programming Language :: Python :: 3",
"Operating System :: MacOS :: MacOS X",
"Operating System :: Microsoft :: Windows",
]
)
from request_folder.request_file import Request
class Api:
def __init__(self): #not important implementation details
import json
import urllib.parse
import urllib.request
from urllib.request import urlopen
class Request:
def __init__(self): # unimportant implementation details
然后我運行以下命令:
python setup.py sdist bdist_wheel
twine upload dist/*
這會將 package 上傳到 pypi 並成功。 但是,當我嘗試下載並使用我的 package 時,我無法導入和使用導入失敗的代碼
pip install my_package_settings_name==1.0.0
from my_package_settings_name import Api
導入找不到 package。 我在 python 方面不是最好的,所以我認為我一定缺少一些小東西。 任何幫助或建議將不勝感激。
讓您感到困惑的問題是您的package 名稱實際上與其包含的python 模塊不同。 您已上傳“my_package_settings_name”,其中包含模塊my_package_name
。 因此,假設您的Api
class 在my_package_name/init.py
中定義,您應該使用:
from my_package_name import Api
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.