W Pythonie chcę napisać w moim kodzie wielowierszowy dykt. Istnieje kilka sposobów formatowania. Oto kilka, o których mogłem pomyśleć:
mydict = { "key1": 1, "key2": 2, "key3": 3, }
mydict = { "key1": 1, "key2": 2, "key3": 3, }
mydict = { "key1": 1, "key2": 2, "key3": 3, }
Wiem, że którykolwiek z powyższych jest poprawny pod względem składniowym, ale zakładam, że istnieje jeden preferowany styl wcięcia i podziału linii dla słowników Python. Co to jest?
Uwaga: nie jest to kwestia składni. Wszystkie powyższe są (o ile mi wiadomo) prawidłowymi instrukcjami języka Python i są sobie równoważne.
python
indentation
code-formatting
multiline
Ryan C. Thompson
źródło
źródło
Odpowiedzi:
Używam # 3. To samo dotyczy długich list, krotek itp. Nie wymaga dodawania żadnych dodatkowych spacji poza wcięciami. Jak zawsze bądź konsekwentny.
Podobnie oto mój preferowany sposób dołączania dużych ciągów bez wprowadzania białych znaków (tak jak w przypadku ciągów wieloliniowych o potrójnym cudzysłowie):
źródło
Przede wszystkim, jak powiedział Steven Rumbalski, „PEP8 nie zajmuje się tym pytaniem”, więc jest to kwestia osobistych preferencji.
Użyłbym podobnego, ale nie identycznego formatu, jak twój format 3. Oto mój i dlaczego.
źródło
Ponieważ twoje klucze są ciągami, a ponieważ mówimy o czytelności, wolę:
źródło
c = function(a=1, b=2)
jest bardziej „pytoniczny”.Zwykle, jeśli masz duże obiekty Pythona, bardzo trudno je sformatować. Osobiście wolę używać do tego niektórych narzędzi.
Oto python-beautifier - www.cleancss.com/python-beautify, który natychmiast zamienia twoje dane w dostosowywalny styl.
źródło
źródło
Z mojego doświadczenia z samouczkami i innymi rzeczami numer 2 zawsze wydaje się preferowany, ale jest to osobisty wybór preferencji bardziej niż cokolwiek innego.
źródło
Zasadniczo nie wprowadzasz przecinka po ostatnim wpisie, ale Python poprawi to za Ciebie.
źródło