Python’da aynı dizin veya alt dizin içindeki sınıf nasıl alınır?

Tüm .

İlişkili olduğu konular : python-io

Tüm .py dosyalarını barındıran bir dizinimiz olsun:

bin/
   main.py
   user.py # User sınıfı
   dir.py # Dir sınıfı

main.py’de user.py ve dir.py sınıflarını kullanmak isteyelim.
Bu Python sınıflarını main.py içine nasıl aktarabiliriz?
Ya da, user.py bir alt dizindeyse bu sınıfı nasıl alabiliriz?

bin/
    dir.py
    main.py
    usr/
        user.py

Python 2

Dosyayla aynı dizinde olan __init__.py isimli boş bir dosya oluşturun. Bu, Python’a “bu dizinden almanın normal” olduğunu gösterecektir.

Böylece aşağıdakini yapabiliriz:

from user import User
from dir import Dir

Dosyalar bir alt dizindeyse de aynı şey geçerlidir – alt dizine de bir __init__.py koyun ve sonra nokta gösterimi ile düzenli içe aktarma deyimlerini kullanın. Her dizin düzeyi için alma yoluna eklemeniz gerekir:

bin/
    main.py
    siniflar/
        user.py
        dir.py

Örneğin dizinimizin adı “sınıflar” ise, şunu yaparız:

from siniflar.user import User
from siniflar.dir import Dir

Python 3

Python 2 ile aynı şekilde yaparız. Ancak bu sefer modül adının önüne önek olarak . getiririz (tabi ki sınıf bir alt dizinde değilse):

from .user import User
from .dir import Dir
Bu yazı topluluk tarafından oluşturuldu. Lisans bilgisine bakabilirsiniz. Yanlış veya eksik bilgileri düzenlemek için github üzerinden katkıda bulunabilirsiniz.

Kategoriler: Yazı, Python

Okumaya devam et!

Sözlük değerlerine erişme

dictionary = {"Hello": 1234, "World": 5678} print(dictionary["Hello"]) Yukarıdaki kod 1234 yazdırılacaktır.

Python’da Liste

Python Listeleri, Python programlarında yaygın olarak kullanılan genel bir veri yapısıdır.

Yerel Python modüllerinin listesini nasıl alabiliriz?

Python kurulumumda (UNIX sunucusu) bulunan Python modüllerinin listesini almak istiyoruz.

Python Koşul İfadeleri – if Kullanımı

Python’da koşul ifadeleri yazmaya if, elif veya else gibi anahtar kelimeleri kullanarak başlarız.

Yorum Gönderin

E-posta hesabınız yayımlanmayacak.

koddla
Tema Mundana by WowThemes.net.