Импортировать пакет из папки в папке сайта-пакета Anaconda - PullRequest
0 голосов
/ 25 мая 2018

Я полный новичок в этом, так что терпите меня;единственное, что я сделал с пакетами, - это разрешил anaconda установить numpy для меня, а затем я импортировал его (и некоторые другие) в сценарии.Я впервые играю с самим пакетом.

Цель: у меня есть куча скриптов .py, которые я хотел бы собрать в пакет;Я хочу поведение, к которому я привык;У меня есть программы на Python, которые живут где-то на моем компьютере (где бы кто-нибудь ни решил сохранить проект), и мне не нужно беспокоиться о пути (потому что это червь я тоже не понимаю), я хочу напечатать mypackage, "importmypackage as mp "(точно так же, как import numpy как np), а затем отправляйтесь в гонки.

Заметьте, что я не знаю, как устроен numy или какой-либо правильный пакет, так что, возможно, аналогия вводит в заблуждение?Но я хочу импортировать функции, определенные для нескольких скриптов .py, которые все сохранены в одной папке (для удобства я также называю mypackage).

Я последовал примеру в этом видео , я написал модуль и поместил его в anaconda3 \ Lib \ site-packages \ и смог написать программу на python, которая живет в некоторой случайной другойпапка, которая может затем импортировать и запускать модуль.

Но, опять же, это позволяло мне получать доступ только к функциям, соответствующим одному скрипту / модулю .py.Я хотел бы иметь возможность добавить папку (я предполагаю с адресом anaconda3 \ Lib \ site-packages) со всеми моими скриптами / модулями, а затем иметь возможность импортировать пакет, соответствующий всем этим модулям.

Я пробовал некоторые решения , но пока не повезло.Я не совсем понимаю сценарии init .py и path .py (в частности, я не понимаю, должны ли они находиться в \ site-packages \ или in \ site-packages \ MyPackage).В частности, я следовал этому решению , потому что он его прописал, но я просто не могу заставить python импортировать что-либо в \ site-packages \ mypackage.

Edit: Я выполнил шаги в этом видео, и он получил нужные мне результаты.

Структура папки пакета

Папка подпакетаструктура

Однако не все способы импорта пакетов в видео работают мне.Вот код, который я смог успешно использовать в скрипте Python, который живет, например, на моем рабочем столе и имеет доступ к пакетам следующим образом:

import mypackage.demo # mypackage is the folder, demo is the python script
mypackage.demo.demoprint() # demoprint() is the function defined in demo.py
> Now in the demo file!
del mypackage

from mypackage.demo import demoprint
demoprint()
> Now in the demo file!
del demoprint

import mypackage.demo as mp
mp.demoprint() 
> Now in the demo file!
del mp

# Call subpackage functions

from mypackage.subpackage.subdemo import subdemoprint
subdemoprint()
> Now in the subdemo package and file!
del subdemoprint

from mypackage.subpackage import subdemo as sd
sd.subdemoprint()
> Now in the subdemo package and file!
del sd
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...