- который нужно импортировать.
ты говоришь test.py:
from .. import ppm
плохо. а как лучше?
нет, не плохо, а вообще не работает.
а как импортировать модуль из parent dir?
в общем случае — никак.
https://docs.python.org/2/whatsnew/2.5.html#pep-328-absolute-and-relative-imports пишут что можно https://stackoverflow.com/questions/714063/importing-modules-from-parent-folder
относительные импорты работают в пределах корневого пакета
только через PYTHONPATH значит?
нет, через нормальную структуру проекта
ну у меня тесты в папке test. в ней скрипт test.py в него нужно импортировать модуль который тестируется. он лежит в директории выше. для питона такая структура не норма?
ты чем тесты запускаешь?
питоном, через консоль
эм... а test suite какой?
я взял pytest. и просто хочу запустить ./test.py и увидеть в консоли результат
эм... и если у тебя pytest нафига ты запускаешь руками какой-то скрипт? читай номер раз https://docs.pytest.org/en/reorganize-docs/new-docs/user/directory_structure.html
а нафига мне лишний оверхед в виде требований к организации кода от питест? я тогда от него вообще откажусь.
тебе нужен оверхед в виде понимания как делать структуру проектов на питоне. это раз. как работает система импортов в питоне. это два.
мне нужны аргументы, зачем мне папка src. следовать бородатым дядям, потому что так надо это не для меня
папка src нужна чтобы не иметь конфликтов во время editable install.
я не знаю что это
https://docs.pytest.org/en/stable/goodpractices.html вот здесь описано зачем нужна папка src и в каких случаях.
та эта система чтоб запускать тесты через pytest. это не для меня. можешь написать как без pytest вообще импортировать модуль из директории где тесты?
так а нахрен ты его брал тогда если не собирался использовать?
я тут просил совет, как написать тесты без моков на простой ==, мне посоветовали его. щас выброшу тогда
Оформить пакетом и поставить его. И забыть про "директории", тем более соседние
легко. оформляешь свою поделку в виде устанавливаемого пакета, делаешь editable install в venv, запускаешь скрипт, импортируешь... ПРОФИТ.
оформить тесты в пакет? это типа сделать один файл test_main.py, а другой модуль где все тесты?
Не тесты, а остальной код
та у меня в продакшн venv, на рабочем ПК его нет
При чем тут венв
при том что устанавливать в систему как правило плохая идея.
Да это понятно. Я имею ввиду к проблеме он не имеет отношения
и как вы блин живете
если ты аргументировать не можешь, а просто следуешь книгам где на обложках бородатые дяди - мне это мало интересно. спасибо
я уже аргументировал, если ты не заметил
я могу просто гитом обновлять все свои скрипты. зачем мне лишние телодвижения?
Обсуждают сегодня