kullanımı __init__.py
kullanıyorum from myprojects.something import blabla
yaptığımda denetimleri çalıştırmak için kullanıyorum.__init__.py
Bugün pyzmq
'u kullanmaya başladım ve sahnelerin ardında neler olduğunu görmek istedim. Bu yüzden kodu github'a götürebilirim ve kendimi açıklayamayacağım (benim için) __init__.py
'un bazı garip kullanımlarını buldum.
Örneğin zmq/core/__init__.py
. zmq.core.__all__
__all__
'un 'un değeri nedir? zmq/__init__.py
yılında
Sonuna get_includes
temelde modülün dizin ve üst dizinde utils dizinine sahip bir liste döndüren bir fonksiyondur
__all__ = ['get_includes'] + core.__all__
de görüyoruz.
Bunun anlamı nedir? Bunu yaparak __init.py__
ne elde etti?
Burada sormadan önce belgelerin bu bölümünü okudum. Ama bu hala soruma cevap vermiyor. Belki de başka bir şekilde sormalıyım: “bla import ble” yi kullanmanın sebebi, ad alanınız üzerinde kontrol sahibi olmanızdır, yani adınıza hangi simgeleri eklediğinize karar vermenizdir. – Pablo
"# include" işlevinin kullanılmasının, önceden tanımlanmış işlevler, değişkenler vb. Ile çarpışmaya neden olabileceği C'nin aksine, gerçekten ihtiyacınız olan sembolleri almanız gerekir. Ben python belgelerinde bir yere okudum, çünkü 'bla import * 'kullanarak iyi bir alışkanlık değildi. Eğer öyleyse, neden '__ all__' tanımlamayı rahatsız etsin? Ve 'import *' yaparken __all__ = ['get_includes'] + core .__ all__' nasıl değerlendirilir? Bla import * dan – Pablo
, içeri girmek için iyi bir alışkanlık değildir, ancak genellikle güvenli olan bazı modüller vardır. Matematik ithalatından rutin olarak yapıyorum *. Bu modüllerin belgelenmesi, genellikle bu şekilde kullanılmak üzere tasarlandıklarına ve bunu daha kolay hale getirmek için __all__ gibi nişanlara destek olduklarına işaret eder. Fakat x import * 'dan emin olmak için kullanacağınız bir şey var ve sadece bildiğiniz paketlerle sorun yaratmayacaksınız. – TimothyAWiseman