r/learnpython

2

tarafından 5 ay önce gönderildi

= Modüller, ubuntu VPS'ye doğru şekilde içe aktarılmıyor =

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

Aşağıdaki klasör yapısına sahibim

- ebeveyn -- corefoo.py --sourcebar.py

foo.py içinde

bunu yapıyorum

işletim sistemini içe aktar

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

Ve sonra bu şekilde yürütüyorum

piton kaynakları/foo.py

Bunu Windows 10'da bir virtualenv'de denedim, çalışıyor ve ubuntu wsl virtualenv'de çalışıyor.

Virtualenv'deki ubuntu sunucumda da bu hatayı alıyorum

sources.bar'dan import Bar ModuleNotFoundError: 'sources.bar'adlı modül yok

Komut dosyasını farklı yollardan çalıştırmayı denedim, hiçbir şey çalışmıyor.

Ubuntu 20.04 VPS'mde python 3.8.10 var, pencerelerde python 3.9.7 var, wsl'de python 3.9.2 var

Ubuntu'daki python'u 3.9'a yükseltmeli miyim yoksa bu ilgisiz bir sorun mu?

%67 Olumlu Oy

Seviye 1

os.path.join(os.path.dirname(os.path.abspath(dosya)

Lütfen burada pathlib'in zevklerinin tadını çıkarmak için kendinize izin verin,

pathlib'den import Path sys.path.append(str(Pathfileresolveparents[1)

kullanmayı bile düşünebilirsiniz

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

önce bu klasörü kontrol edeceğini ve yanlışlıkla mevcut PATH'den bir şey seçmeyeceğini garanti etmek için

1

== Topluluk Hakkında ==

Soru göndermek ve python kodunuz hakkında genel tavsiye istemek için subreddit.

623k

Üyeler

570

İnternet üzerinden

2 Ekim 2009'da oluşturuldu

Reddit Inc ÃÂé 2022. Tüm hakları saklıdır