r/learnpython
2
Postado por 5 meses atrás
= Os módulos não estão sendo importados corretamente no ubuntu VPS =
![ ](httpswww.redditstatic.com/desktop2x/img/renderTimingPixel.png)
Eu tenho a seguinte estrutura de pastas
- pai -- corefoo.py -- sourcesbar.py
Dentro de foo.py
Eu faço isso
import os, sys
sys.path.append(os.path.join(os.path.dirname(os.path.abspath(filefrom sources.bar import Bar
E então eu executo assim
fontes python/foo.py
Eu tentei isso no windows 10 em um virtualenv, funciona, e no ubuntu wsl virtualenv funciona.
No meu servidor ubuntu no virtualenv também, recebo este erro
from sources.bar import Bar ModuleNotFoundError: Nenhum módulo chamado 'sources.bar'Tentei executar o script de caminhos diferentes, nada funciona.
No meu ubuntu 20.04 VPS, tenho python 3.8.10, no windows tenho python 3.9.7, no wsl tenho python 3.9.2
Devo atualizar o python no Ubuntu para 3.9 ou esse é um problema não relacionado?
67% de votos positivos
nível 1
os.path.join(os.path.dirname(os.path.abspath(arquivo
Por favor, permita-se desfrutar dos prazeres do pathlib aqui,
from pathlib import Path sys.path.append(str(Pathfileresolveparents[1
você pode até querer considerar o uso
sys.path.insert(0, str(Pathfileresolveparents[1
para garantir que ele verificará essa pasta primeiro e não escolherá acidentalmente algo do PATH existente
1
== Sobre a comunidade ==
Subreddit para postar perguntas e pedir conselhos gerais sobre seu código python.
623k
Membros
570
On-line
Criado em 2 de outubro de 2009
Reddit Inc ÃÂé 2022. Todos os direitos reservados