Python internals hakkında soru. import abc
'u çalıştırırsam, Python modülü yeni bir ad boşluğuna okur ve yeni ad boşluğuna işaret etmek için global ad alanındaki abc
değişkenini bağlar."Abc import xyz" kaynağından yürütmek, modül abc nereye gider?
Ben from abc import xyz
o zaman bazı yeni isim alanına tüm modülü abc
okur ve daha sonra modül içine okundu bu yeni oluşturulan ad alanında xyz
bağlıdır aynı nesneye genel ad değişken xyz
bağlar yürütmek durumunda. En azından benim anlayışım bu.
abc
'un daha sonra okuduğu ad alanına ne olur? Bir yerde yaşadığını varsayalım, çünkü xyz
bu ad alanındaki diğer nesnelere erişebilir. Bu "hayalet" abc
ad alanına bir şekilde erişilebilir mi?
Ayrıca ben
from abc import xyz
from abc import fgh
yaparsanız xyz
ve fgh
abc
aynı küresel değişkeni değiştirirseniz o, sadece orada olacak öyleyse, yalnızca bir "hayalet" abc
alan bulunduğundan varsayarak yaşıyorum bir kopyası. Bu doğru mu?
Bu sadece meraktan muaftır mı? Modüle "gizlice" bu şekilde erişmeye çalışmak için gerçek bir sebep yok; Modül nesnesine erişmek istiyorsanız, normal olarak içe aktarın. – BrenBarn
Sadece meraktan, işlerin başlığın altında nasıl çalıştığını anlamaya çalışıyor. Çok fazla veri çalışması yapıyorum, bu çalışmanın bir kısmını R'den Python'a taşımayı düşünüyorum, bu yüzden sadece bir anlayış oluşturmak. – mrip