Как мне установить пакет Python локально, не загружая его в PyPI

#python #python-3.x #pip

#python #python-3.x #pip

Вопрос:

Я знаю, что этот вопрос задавался ранее, и это ссылки на эту тему, но ни одна из инструкций, похоже, не работает. У меня есть пакет под названием PyFinances со следующей структурой каталогов, и я работаю на компьютере Macintosh с ОС BigSur версии 11.1

 PyFinances
|_PyFinances
|  |_ __init__.py
|  |_ finances.py
|_ data
|_ test
|_ scripts
|_ docs
|_ README.rst
|_ LICENSE
|_ setup.py
|_ Makefile
|_ requirements.txt
|_ .venv
 

Содержит Makefile содержимое

 init:
        pip3 install -r requirements.txt
test:
        pytest -s test
 

И setup.py имеет следующее содержимое

 # -*- coding: utf-8 -*-

# Learn more: https://github.com/kennethreitz/setup.py

from setuptools import setup, find_packages


with open('README.rst') as f:
    readme = f.read()

with open('LICENSE') as f:
    license = f.read()

setup(
    name='PyFinances',
    version='0.1.0',
    description='develops a statistical estimate for the value of checking and savings account',
    long_description=readme,
    author='Jonathan A. Webb',
    author_email='webbja123@gmail.com',
    license=license,
    packages=find_packages(),
    classifiers=[
        "Programming Language :: Python :: 3",
        "Programming Languate :: Python :: 3.9", 
        "Operating System :: MacOS",
    ],
    zip_safe=False,
)
 

Я пытаюсь установить свой собственный код в виде пакета в своей системе локально, не загружая его в PyPI. Я работаю в виртуальной среде и начинаю с установки wheel с помощью следующей команды в самом верхнем PyFinances каталоге.

 pip3 install wheel
 

Затем я устанавливаю свой пакет с помощью следующей команды.

 pip3 install .
 

Установщик выдает мне сообщение Successfully installed PyFinances-0.10 , которое заставляет меня думать, что все работает нормально. Однако, если я перейду в совершенно другой каталог и открою интерфейс командной строки Python и введу import PyFinances , или попытаюсь использовать файл, который использует ту же команду, я получаю ModuleNotFoundError . Кто-нибудь может сказать мне, что не так с моим процессом превращения моего собственного кода Python в локальную установку?

Комментарии:

1. Что вы получаете, когда выполняете a pip list в этом venv ?

2. @astrochun он показывает все пакеты, установленные в виртуальной среде, включая PyFinances версии 0.1.0.

Ответ №1:

После долгих исследований я обнаружил, что использую неправильную виртуальную среду, что не позволило мне получить доступ к моему пакету. После изменения на правильный файл .venv проблема была устранена.