Not: Bu performans ilişkin sorunlar ele ki değil linked answer kopyası olduğunu ve ne dict() işlev çağrısı yapıldığında perde arkasında olur. Benim sorum, her zaman anahtar kelime argümanlarıyla ilgili, her zaman string
türünde anahtarlarla sonuçlanıyor. Kesinlikle bir kopya değil.Will dict (** kwargs) her zaman Keys'in tip dizgisi olduğu bir sözlük verir mi?
Yöntem-1:
suit_values = {'spades':3, 'hearts':2, 'diamonds':1, 'clubs':0}
Yöntem-2:
suit_values = dict(spades=3, hearts=2, diamonds=1, clubs=0)
Yöntem-1 bana mantıklı. Python'a anahtarlarının dizeleri ve değerlerinin sayısal olduğu bir sözlük vermesini söylemek gibi. Ama Yöntem-2'de python, anahtarların dizgiler olduğunu ve başka bir şeyin olmadığını bilir?
Bu bir eğilim mi? öyleyse, bu tür davranışlar gösteren başka örnekler (sözlüklerin dışında)?
DÜZENLEME-1: yanıtlarından
Benim anlayış:
- Yöntem-2 bir sözlük oluşturma
dict(**kwargs)
yoludur. spades=3
yılındaspades
geçerli bir Python tanımlayıcı, bu nedenle tipstring
bir anahtar olarak alınır. Yani
, tuşlar tip string
vardır bir sözlükte olacak dict(**kwargs)
hep sonuç?
EDIT-2: ^^ YES.
Gerçekten "Ve anahtar kelime bağımsız değişkenleri yalnızca dizelerle parametre olarak iletilebilir" bölümünü almadım. – Somjit
@Somjit Hmmm, biraz düzenledim. Umarım şimdi açıktır. – thefourtheye
Tamam. Bu mantıklı. Dolayısıyla, anahtar kelime bağımsız değişkenleri yalnızca dizeler olarak iletilebilir. Fakat thay geçtikten sonra, dizge olarak 'emilirler', yani dize tipi nesneler olarak depolanırlar? Düzenlemem bu soruyu sorar. – Somjit