Импорт не распознает установленный пакет python, установленный pip, sys.path правильный - PullRequest
0 голосов
/ 19 апреля 2020

Я установил ипотечный пакет, используя пункт. В командной строке ниже показано, где она установлена.

C:\Users\benja>pip show mortgage
Name: mortgage
Version: 1.0.5
Summary: Mortgage Calculator
Home-page: https://github.com/austinmcconnell/mortgage
Author: Austin McConnell
Author-email: austin.s.mcconnell@gmail.com
License: MIT license
Location: c:\users\benja\appdata\local\programs\python\python36\lib\site-packages
Requires:
Required-by:

Я могу запустить Python через командную строку и успешно импортировать / использовать пакет, например ...

C:\Users\benja>py
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from mortgage import Loan
>>> Loan(principal=250000, interest=.04, term=30)
<Loan principal=250000, interest=0.04, term=30>

Это имеет смысл, поскольку путь sys указывает на папку, в которой установлен пакет.

C:\Users\benja>py
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> from pprint import pprint as pp
>>> pp(sys.path)
['',
 'C:\\Users\\benja\\AppData\\Local\\Programs\\Python\\Python36\\python36.zip',
 'C:\\Users\\benja\\AppData\\Local\\Programs\\Python\\Python36\\DLLs',
 'C:\\Users\\benja\\AppData\\Local\\Programs\\Python\\Python36\\lib',
 'C:\\Users\\benja\\AppData\\Local\\Programs\\Python\\Python36',
 'C:\\Users\\benja\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages',
 'C:\\Users\\benja\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages\\win32',
 'C:\\Users\\benja\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages\\win32\\lib',
 'C:\\Users\\benja\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages\\Pythonwin']

Проблема: Я создал модуль buysellcalculator.py, который импортирует ипотечный пакет, похоже на то, что я сделал в командной строке выше. Тем не менее, я получаю сообщение об ошибке при попытке запустить этот модуль. Что я делаю не так?

C:\Users\benja\OneDrive\Documents\R\Real Estate\PyRM>buysellcalculator.py
Traceback (most recent call last):
  File "C:\Users\benja\OneDrive\Documents\R\Real Estate\PyRM\buysellcalculator.py", line 10, in <module>
    from mortgage import Loan
ModuleNotFoundError: No module named 'mortgage'
...