Chciałbym wiedzieć, jaka jest najlepsza praktyka deklarowania słownika w poniższych 2 podejściach i dlaczego?dict() vs {} w python, który jest lepszy?
>>>a=dict(one=2, two=3) # {"two":3, "one":2}
>>>a={"two":3, "one":2}
Chciałbym wiedzieć, jaka jest najlepsza praktyka deklarowania słownika w poniższych 2 podejściach i dlaczego?dict() vs {} w python, który jest lepszy?
>>>a=dict(one=2, two=3) # {"two":3, "one":2}
>>>a={"two":3, "one":2}
Czy uważasz, że someone has already analyzed that (z perspektywy wydajności).
z CPython 2.7, stosując dict() do słowników zajmuje 6 razy dłużej i wymaga wielu operacji alokacji pamięci, niż do dosłownym składnią. Użyj {}, aby tworzyć słowniki, zwłaszcza jeśli wstępnie je wypełniasz, chyba że literalna składnia nie działa w przypadku Twojego .
drugi jest bardziej przejrzyste i łatwiejsze do odczytania i to jest dobra rzecz, że istnieje specyficzna składnia do tego, ponieważ jest to bardzo częsta operacja:
a = {"two":3, "one":2}
I powinny być korzystne na ogół walizka. Argument wydajności jest problemem wtórnym, ale mimo to składnia jest szybsza.
Downvoter: czy chcesz skomentować? –
W Pythonie zawsze należy używać dosłownej składni, gdy tylko jest to możliwe. Tak więc []
dla list, itp. Łatwiej dla innych czytać, wygląda ładniej, a interpreter zamieni go na kod bajtowy, który jest wykonywany szybciej (specjalne kody dla kontenerów, zamiast wykonywania wywołań funkcji).
To nie jest takie zaskakujące, biorąc pod uwagę, że argumenty słów kluczowych są przekazywane jako słownik, który następnie musi zostać ponownie skopiowany przez konstruktor 'dict'. –