Python hızlı şekilde sözlüğe kopyalamak
Sözlük çok ile çalışan bir Python programı var. Sözlükler kopyalarını binlerce kez yapmak zorundayım. Anahtarları ve ilişkili içerikleri hem de bir kopyasını istiyorum. Kopya düzenlenecek ve orijinal (kopya gibi değişiklikleri orijinal etkilememeli.) bağlantılı olmak zorunda değil
Anahtarları Dizeleri, Tamsayı değerlerdir (0/1).
Ben şu anda basit bir şekilde kullanın:
newDict = oldDict.copy()
Benim Kod profil kopyalama işlemi çoğu zaman aldığını göstermektedir.
dict.copy()
yöntemi için daha hızlı bir alternatif var mı? En hızlı ne olurdu?
CEVAP
dict
Python işlemleri için C source bakarak, oldukça naif (ama) verimli bir kopyasını yapıyorlar. Aslında PyDict_Merge
bir çağrı aşağı kaynar:
PyDict_Merge(PyObject *a, PyObject *b, int override)
Bu ise onları nesneler varsa eğer aynı nesne olup olmadıklarını ve bu gibi şeyler için hızlı denetler. Bundan sonra hedef dict için tek seferlik yeniden boyutlandırma/ayırma cömert ve kopyaları tek tek unsurları. Çok daha hızlı dahili copy()
Daha hayal bile edemiyorum.
Bir şekilde Android üzerinde Python ça...
Neden `1000000000000000 aralığı(100000...
Nasıl klon ya da Python içinde bir lis...
Neden Python kodunu daha hızlı bir işl...
Nasıl hızlı bir şekilde mysql veritaba...