Saya ingin membuat kamus dari daftar yang diberikan, hanya dalam satu baris . Kunci kamus akan menjadi indeks, dan nilai akan menjadi elemen daftar. Sesuatu seperti ini:
a = [51,27,13,56] #given list
d = one-line-statement #one line statement to create dictionary
print(d)
Keluaran:
{0:51, 1:27, 2:13, 3:56}
Saya tidak memiliki persyaratan khusus tentang mengapa saya menginginkan satu baris. Saya hanya menjelajahi python, dan bertanya-tanya apakah itu mungkin.
python
list
dictionary
python-3.x
Nawaz
sumber
sumber
{[x[0]:51, x[1]:27, x[2]:13, x[3]:56}
.zip()
:dict(zip(x, a))
.Jawaban:
a = [51,27,13,56] b = dict(enumerate(a)) print(b)
akan menghasilkan
{0: 51, 1: 27, 2: 13, 3: 56}
sumber
count()
...Dengan konstruktor lain, Anda punya
a = [51,27,13,56] #given list d={i:x for i,x in enumerate(a)} print(d)
sumber
Coba
enumerate
: ini akan mengembalikan daftar (atau iterator) tupel(i, a[i])
, dari mana Anda dapat membuatdict
:a = [51,27,13,56] b = dict(enumerate(a)) print b
sumber
{x:a[x] for x in range(len(a))}
sumber
Cukup gunakan pemahaman daftar.
a = [51,27,13,56] b = dict( [ (i,a[i]) for i in range(len(a)) ] ) print b
sumber