г / учить питона

2

Автор:5 месяцев назад

= Модули неправильно импортируются на Ubuntu VPS =

![ ](httpswww.redditstatic.com/desktop2x/img/renderTimingPixel.png)

У меня есть следующая структура папок

- родитель -- corefoo.py -- sourcesbar.py

Внутри foo.py

я сделаю это

импорт ОС, СИС

sys.path.append(os.path.join(os.path.dirname(os.path.abspath(filefrom sources.bar import Bar)

И затем я выполняю это так

исходники питона/foo.py

Я попробовал это на Windows 10 в virtualenv, это работает, и на Ubuntu WSL VirtualenV это работает.

На моем сервере ubuntu в virtualenv тоже получите эту ошибку

из sources.bar import Bar ModuleNotFoundError: нет модуля с именем 'sources.bar'Пробовал запускать скрипт с разных путей, ничего не работает.

На моем ubuntu 20.04 VPS у меня python 3.8.10, на windows у меня python 3.9.7, на wsl у меня python 3.9.2

Должен ли я обновить python на Ubuntu до 3.9 или это не связанная проблема?

67% проголосовали за

1-й уровень

os.path.join(os.path.dirname(os.path.abspath(файл

Пожалуйста, позвольте себе насладиться удовольствиями pathlib здесь,

из pathlib import Path sys.path.append(str(Pathfileresolveparents[1

вы можете даже рассмотреть возможность использования

sys.path.insert(0, str(Pathfileresolveparents[1

чтобы гарантировать, что он сначала проверит эту папку и случайно не выберет что-то из существующего PATH

1

== О сообществе ==

Subreddit для размещения вопросов и получения общих советов о вашем коде Python.

623k

Члены

570

онлайн

Создано 2 октября 2009 г.

Reddit Inc © 2022. Все права защищены.