Как вы думаете, что такое соглашение, которое в основном используется при написании словарных литералов в коде?Соглашение о скобках Python
Я напишу одно возможное соглашение в качестве ответа.
Как вы думаете, что такое соглашение, которое в основном используется при написании словарных литералов в коде?Соглашение о скобках Python
Я напишу одно возможное соглашение в качестве ответа.
my_dictionary = {
1: 'something',
2: 'some other thing',
}
+1 для задней запятой. – RichieHindle
Сначала я не оценил полезность конечной запятой в списках, dicts и т. Д. Но это * действительно * упрощает последующее редактирование списка, независимо от того, переупорядочиваете ли вы, копируете/вставляете или добавляете новые элементы. – PaulMcG
Добавление одной строки - это однострочный diff с запятой на месте. – u0b34a0f6ae
Я бы сказал, что почти нет стандарта.
Я видел два пути отступа:
Indent 1:
my_dictionary = {
'uno': 'something',
'number two': 'some other thing',
}
Indent 2:
my_dictionary = {'uno': 'something',
'number two': 'some other thing',
}
Я видел три помещен, чтобы иметь закрывающую скобку:
End 1:
my_dictionary = {'uno': 'something',
'number two': 'some other thing',
}
End 2:
my_dictionary = {'uno': 'something',
'number two': 'some other thing',
}
End 3:
my_dictionary = {'uno': 'something',
'number two': 'some other thing',}
И иногда вы оправдываете значение:
my_dictionary = {'uno': 'something',
'number two': 'some other thing',
}
И иногда даже двоеточия:
my_dictionary = {'uno' : 'something',
'number two' : 'some other thing',
}
Какой выглядит странно.
И иногда у вас есть конец запятой, а иногда нет:
my_dictionary = {'uno': 'something',
'number two': 'some other thing'}
И иногда вы вставляете все это на одной строке (если он подходит).
my_dictionary = {'uno': 'something', 2: 'some other thing'}
У каждого, кажется, есть своя комбинация этих стилей. Лично я склонен к стилю, который вы используете в своем примере, если нет причин не делать этого. Общие причины не в том, когда у вас есть словарь в составе инструкции. Нравится так:
amethodthattakesadict({'hey': 'this',
'looks': 'a',
'bit': 'shitty',
})
Я бы рекомендовал вам адаптироваться к стилю парня, который написал код, который вы редактируете. Если это ваш код: сделайте как хотите. :-)
О закрывающей фигурной скобкой: Я предпочитаю это так:
my_dictionary = {
'a': 'first value',
'b': 'second',
}
, и я скажу вам, почему: потому что код Python отступы не имеет близкий знак, код с отступом, как, что: первый строка (if, while, def и т. д.) превзойдена остальной частью предложения, при этом все остальные строки имеют отступы одинаковой суммы. Последняя строка предложения имеет отступы наряду со всем остальным. Следующая строка с отступом такая же, как и первая строка, это первая строка следующего предложения, а не последняя строка этого.
Поэтому мне нравится создавать структуры данных с отступами, используя аналогичные соглашения с предложениями кода, даже если структуры данных имеют явный закрывающий токен и, следовательно, могут иметь большую гибкость.
Я делаю это, если словарь является слишком большим, чтобы поместиться на одной строке:
d = \
{
'a' : 'b',
'c' : 'd'
}
Отступ стиль 1, стиль завершения 3 (после ответа Леннарта):
my_dictionary = {1: 'thing_one',
2: 'thing_two',
...
n: 'thing_n'}
Это может быть самый бесшовный стиль отступа для заключенных в квадрат объектов в коде Python, поскольку он очень похож на форматирование форматирования Python. Отбрасывание в отступы C-стиля в коде Python всегда казалось мне немного неудобным, и я подозреваю, что он в основном используется, потому что программисты, привыкшие к C-подобным языкам (из-за их вездесущности), возможно, не подвергались различным стилям отступа.
Недостатком может быть то, что вставка в начале или конце немного сложнее, чем в других стилях. Учитывая правильный редактор, который поддерживает пишущий код Python, он не должен сильно отличаться.
Попробуйте этот стиль отступов в контексте и сравните его с отступом C-стиля бок о бок, а затем решите, какой из них выглядит более питоническим и последовательным.
Может быть, это можно было бы назвать сюсюкать-стиль отступов, потому что это путь, в котором сюсюкать код был отступом так
веков
десятилетий, но, например, также часто используется в Smalltalk коде. Одна вещь, которую вы часто читаете в дискуссиях о размещении скобок (на Lisp-подобных языках): «Зачем давать им лишние строки? Они важны?».
В конце дня, однако, это в основном вкус.
опросы должны быть wiki сообщества – SilentGhost