SORU
10 Mayıs 2013, Cuma


Yeniden Adlandır sözlük anahtar

Bir şekilde sözlük anahtar, dict anahtar/değer yineleme olmadan yeni bir isim ve eski adı anahtarını çıkartmak için; ve değerini Yeniden Atama olmadan yeniden adlandırmak var mı?

OrderedDict durumunda, bu anahtar konumu tutarken de aynı şeyi yap.

CEVAP
10 Mayıs 2013, Cuma


Düzenli bir dict için kullanabilirsiniz:

mydict[new_key] = mydict.pop(old_key)

Bir OrderedDict için, tamamen yeni bir anlayışı kullanarak oluşturmalısınız bence.

>>> OrderedDict(zip('123', 'abc'))
OrderedDict([('1', 'a'), ('2', 'b'), ('3', 'c')])
>>> oldkey, newkey = '2', 'potato'
>>> OrderedDict((newkey if k == oldkey else k, v) for k, v in _.viewitems())
OrderedDict([('1', 'a'), ('potato', 'b'), ('3', 'c')])

Anahtarın değiştirme bu soruyu soran gibi görünüyor, dict anahtarları genellikle, çünkü pratik değildirdeğişmezsayılar, dizeleri veya diziler gibi nesneler. Anahtar değiştirmeye çalışmak yerine, yeni bir anahtar değeri yeniden atama ve eski anahtarı çıkarma "Yeniden Adlandır" python. bu elde edebilirsiniz nasıl.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Menglong Tav

    Menglong Tav

    18 Temmuz 2010
  • Pocketnow

    Pocketnow

    14 EKİM 2007
  • soyacincautv

    soyacincautv

    14 NİSAN 2010