В сценарии, открытое с IDLE, я получил следующее углубление в теле следующей функции в :
def f(self, a, b, c, d, e, f):
return 'guitar { id: %d, relevant_properties: (%.02f, %.02f, %.02f), irrelevant_properties: (%.02f, %.02f, %.02f) }' % \
(self.id, a, b, c, d, e, f)
Чтобы получить этот отступ, поместите курсор между (%.02f, %.02f, %.02f) }' % \
и (self.id, a, b, c, d, e, f)
, а затем нажмите на кнопку ENTER
Если я копирую, здесь на SO, только два л Инес из тела Вышеуказанная функция, без нажатия на {} кнопку, я получаю:
return 'guitar { id: %d, relevant_properties: (%.02f, %.02f, %.02f), irrelevant_properties: (%.02f, %.02f, %.02f) }' % \
(self.id, a, b, c, d, e, f)
Углубление в ответ aculich является правильным, и один ваш вопрос не совсем неправильно (потому что ваш код будет работать без ошибок), но не визуально приятным.
.
Лично я считаю, что предпочтительнее поставить операционную Подписать % на линии следующих \
, а не перед ним, как это:
return 'guitar { id: %d, relevant_properties: (%.02f, %.02f, %.02f), irrelevant_properties: (%.02f, %.02f, %.02f) }'\
% (self.id, a, b, c, d, e, f)
.
можно улучшить отображение, так что ширина уменьшается, как это:
return ('guitar '
'{ '
'id: %d, '
'relevant_properties: (%.02f, %.02f, %.02f), '
'irrelevant_properties: (%.02f, %.02f, %.02f) '
'}') \
% (self.id, a, b, c, d, e, f)
Bouaif (это личное французского звукоподражание пытается выразить сомнение), это не фантастическое, потому что он смешивает неявную и явную линию, соединяющую ,
EDIT: Затем, принимая во внимание объяснения aculich, тем выше уменьшенной ширины раствора можно записать также
return ('guitar '
'{ '
'id: %d, '
'relevant_properties: (%.02f, %.02f, %.02f), '
'irrelevant_properties: (%.02f, %.02f, %.02f) '
'}'
% (self.id, a, b, c, d, e, f))
Ну, что получил больше стиля.
Но я не решаюсь, зная, какой из них я предпочитаю среди этому последнему и следующим образом , что пришло мне в голову, думая обо всем, что:
return ('guitar '
'{ '
'id: %d, '
'relevant_properties: (%.02f, %.02f, %.02f), '
'irrelevant_properties: (%.02f, %.02f, %.02f) '
'}'
) % (self.id, a, b, c, d, e, f)
Да оператор обратной косой черты позволяет разбить заявления питона на к новой строке – BeRecursive
Но означает ли это, что это «технически» все еще считается 1 строкой и 1 утверждением, или было бы правильнее сказать 2 строки и 1 утверждение? (хотя бы одно и то же утверждение?) –
Python анализирует его как один оператор и, следовательно, одну строку (они одно и то же в Python - каждый оператор является отдельной строкой по определению) – BeRecursive