r/learnpython

2

Postat de acum 5 luni

= Modulele nu sunt importate corect pe ubuntu VPS =

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

Am următoarea structură de foldere

- părinte -- corefoo.py -- sourcesbar.py

În interiorul foo.py

eu fac asta

import os, sys

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

Și apoi o execut așa

python sources/foo.py

Am încercat asta pe Windows 10 într-un virtualenv, funcționează, iar pe ubuntu wsl virtualenv funcționează.

Și pe serverul meu ubuntu din virtualenv, obțineți această eroare

din source.bar import Bar ModuleNotFoundError: Niciun modul numit „sources.bar”

Am încercat să execut scriptul din diferite căi, nimic nu funcționează.

Pe ubuntu 20.04 VPS am python 3.8.10, pe windows am python 3.9.7, pe wsl am python 3.9.2

Ar trebui să fac upgrade la python pe ubuntu la 3.9 sau aceasta este o problemă fără legătură?

67% au votat pozitiv

nivelul 1

os.path.join(os.path.dirname(os.path.abspath(fișier

Vă rugăm să vă permiteți să vă bucurați de plăcerile lui pathlib aici,

din calea import Cale sys.path.append(str(Pathfileresolveparents[1

ați putea chiar să vă gândiți să utilizați

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

pentru a garanta că va verifica mai întâi acel folder și nu va alege accidental ceva din PATH-ul existent

1

== Despre comunitate ==

Subreddit pentru a posta întrebări și a cere sfaturi generale despre codul dvs. python.

623k

Membrii

570

Pe net

Creat 2 octombrie 2009

Reddit Inc ÃÂé 2022. Toate drepturile rezervate