Sadece buradan haberdar etmek için. (bir newbee'den, keviv22)
Hiçbir zaman ve asla kendi iyiliğiniz için, klasörleri veya dosyaları "-" veya "_" gibi sembollerle adlandırmayın. Bunu yaptıysanız, birkaç sorunla karşılaşabilirsiniz. Benimki gibi, diyelim ki, içe aktarma komutunuz doğru olsa da, bu tür adlandırılmış klasörler içinde bulunan istenen dosyaları başarılı bir şekilde içe aktaramazsınız.
Geçersiz Klasör adları aşağıdaki gibidir:
- Genel Sınıflar Klasörü
- Generic_Classes_Folder
Yukarıdakiler için geçerli Klasör adları:
- GenericClassesFolder veya Genericclassesfolder veya genericClassesFolder (veya kelimeler arasında boşluk veya özel semboller olmadan bunun gibi)
Ne hata yaptım:
dosya yapısını düşünün.
Parent
. __init__.py
. Setup
.. __init__.py
.. Generic-Class-Folder
... __init__.py
... targetClass.py
. Check
.. __init__.py
.. testFile.py
Ne yapmak istedim
- testFile.py'den, 'targetClass.py' dosyasında "functionExecute" adlı işlevi kullanmak için Generic-Class-Folder dosyasındaki 'targetClass.py' dosyasını içe aktarmak istedim
Ne emri verdim?
- 'testFile.py'den komut yazdı,
from Core.Generic-Class-Folder.targetClass import functionExecute
- Gibi hatalar var
SyntaxError: invalid syntax
Birçok arama denedi ve birçok yığın akışı sorusunu görüntüledi ve neyin yanlış gittiğine karar veremedi. Dosyalarımı defalarca kontrol ettim, __init__.py
dosya kullandım , ortam yolunu ekledim ve neyin yanlış gittiğinden çok endişelendim ......
Ve uzun uzun bir süre sonra bunu bir arkadaşımla konuşurken anladım. Bu tür adlandırma kurallarını kullanmak konusunda biraz aptalım. Herhangi bir klasör veya dosya için isim tanımlamak için asla boşluk veya özel semboller kullanmamalıyım. Yani, iletmek istediğim şey bu. İyi günler!
(bununla ilgili büyük gönderi için özür dilerim ... sadece hayal kırıklıklarımı bırakıyorum .... :) Teşekkürler!)
__init__.py
içe aktardığınız her alt klasöre ekleyin .