170 похожих чатов

Папка test. в ней test.py который запускается из консоли. ../ppm.py

- который нужно импортировать.
ты говоришь test.py:
from .. import ppm
плохо. а как лучше?

36 ответов

19 просмотров

нет, не плохо, а вообще не работает.

Alex-Surname Автор вопроса
Alex
нет, не плохо, а вообще не работает.

а как импортировать модуль из parent dir?

Alex-Surname Автор вопроса
Alex
в общем случае — никак.

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

Alex Surname
https://docs.python.org/2/whatsnew/2.5.html#pep-32...

относительные импорты работают в пределах корневого пакета

Alex-Surname Автор вопроса
Alex Surname
только через PYTHONPATH значит?

нет, через нормальную структуру проекта

Alex-Surname Автор вопроса
Alex
нет, через нормальную структуру проекта

ну у меня тесты в папке test. в ней скрипт test.py в него нужно импортировать модуль который тестируется. он лежит в директории выше. для питона такая структура не норма?

Alex-Surname Автор вопроса
Alex
ты чем тесты запускаешь?

питоном, через консоль

Alex-Surname Автор вопроса
Alex
эм... а test suite какой?

я взял pytest. и просто хочу запустить ./test.py и увидеть в консоли результат

Alex Surname
я взял pytest. и просто хочу запустить ./test.py ...

эм... и если у тебя pytest нафига ты запускаешь руками какой-то скрипт? читай номер раз https://docs.pytest.org/en/reorganize-docs/new-docs/user/directory_structure.html

Alex-Surname Автор вопроса
Alex
эм... и если у тебя pytest нафига ты запускаешь ру...

а нафига мне лишний оверхед в виде требований к организации кода от питест? я тогда от него вообще откажусь.

Alex Surname
а нафига мне лишний оверхед в виде требований к ор...

тебе нужен оверхед в виде понимания как делать структуру проектов на питоне. это раз. как работает система импортов в питоне. это два.

Alex-Surname Автор вопроса
Alex
тебе нужен оверхед в виде понимания как делать стр...

мне нужны аргументы, зачем мне папка src. следовать бородатым дядям, потому что так надо это не для меня

Alex Surname
мне нужны аргументы, зачем мне папка src. следоват...

папка src нужна чтобы не иметь конфликтов во время editable install.

Alex Surname
я не знаю что это

https://docs.pytest.org/en/stable/goodpractices.html вот здесь описано зачем нужна папка src и в каких случаях.

Alex-Surname Автор вопроса
Alex
https://docs.pytest.org/en/stable/goodpractices.ht...

та эта система чтоб запускать тесты через pytest. это не для меня. можешь написать как без pytest вообще импортировать модуль из директории где тесты?

Alex Surname
та эта система чтоб запускать тесты через pytest. ...

так а нахрен ты его брал тогда если не собирался использовать?

Alex-Surname Автор вопроса
Alex
так а нахрен ты его брал тогда если не собирался и...

я тут просил совет, как написать тесты без моков на простой ==, мне посоветовали его. щас выброшу тогда

Alex Surname
та эта система чтоб запускать тесты через pytest. ...

Оформить пакетом и поставить его. И забыть про "директории", тем более соседние

Alex Surname
та эта система чтоб запускать тесты через pytest. ...

легко. оформляешь свою поделку в виде устанавливаемого пакета, делаешь editable install в venv, запускаешь скрипт, импортируешь... ПРОФИТ.

Alex-Surname Автор вопроса
Tishka17
Оформить пакетом и поставить его. И забыть про "ди...

оформить тесты в пакет? это типа сделать один файл test_main.py, а другой модуль где все тесты?

Alex-Surname Автор вопроса
Alex
легко. оформляешь свою поделку в виде устанавливае...

та у меня в продакшн venv, на рабочем ПК его нет

Tishka17
При чем тут венв

при том что устанавливать в систему как правило плохая идея.

Alex
при том что устанавливать в систему как правило пл...

Да это понятно. Я имею ввиду к проблеме он не имеет отношения

Alex-Surname Автор вопроса
Alex
и как вы блин живете

если ты аргументировать не можешь, а просто следуешь книгам где на обложках бородатые дяди - мне это мало интересно. спасибо

Alex Surname
если ты аргументировать не можешь, а просто следуе...

я уже аргументировал, если ты не заметил

Alex-Surname Автор вопроса
Alex
легко. оформляешь свою поделку в виде устанавливае...

я могу просто гитом обновлять все свои скрипты. зачем мне лишние телодвижения?

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта