Menggunakan PyCharm, saya perhatikan itu menawarkan untuk mengkonversi literal dict :
d = {
'one': '1',
'two': '2',
}
menjadi konstruktor dict :
d = dict(one='1', two='2')
Apakah pendekatan yang berbeda ini berbeda secara signifikan?
(Saat menulis pertanyaan ini saya perhatikan bahwa menggunakannya dict()
tampaknya tidak mungkin untuk menentukan kunci numerik .. d = {1: 'one', 2: 'two'}
adalah mungkin, tetapi, jelas, dict(1='one' ...)
tidak. Ada yang lain?)
dict(abc = 123)
konstruktor menghasilkan kamus dengan kunci byte-string 'abc'
, yang mungkin mengejutkan jika Anda menggunakan unicode_literals
dan mengharapkan kunci kamus menjadi unicode u'abc'
. Lihat stackoverflow.com/questions/20357210/… .
dict()
mengambil daftar pasangan nilai kunci serta memungkinkan parameter bernama, sehingga dapat digunakan untuk membuat semua jenis dict, hanya saja tidak dengan sintaks yang Anda gunakan. Mungkin juga tidak ada artinya sama sekali jika ada bug ( youtrack.jetbrains.net/issue/PY-2512 ) di pyCharm secara khusus karena apa yang Anda temukan, yang telah diperbaiki).