аватар question@mail.ru · 01.01.1970 03:00

Перенос f-string по PEP

Решил следить за написанием своего кода и столкнулся с проблемой, как правильно делать перенос строк и выражений в Python.

def get_message(self) -> str:        retu f'Тип тренировки: {self.training_type}; Длительность: {self.duration:.3f} ч.; Дистанция: {self.distance:.3f} км; Ср. скорость: {self.speed:.3f} км/ч; Потрачено ккал: {self.calories:.3f}.'
    def get_spent_calories(self) -> float:        """"""Получить количество затраченных калорий.""""""        mean_speed = self.get_mean_speed()        retu (self.coeff_calorie_1 * mean_speed - self.coeff_calorie_2) * self.weight / self.M_IN_KM * self.duration * self.H_IN_MIN

Как делать перенос строки (не превышало 79 символов) при этом в консоли вывод должен быть в одну строку. Заранее извиняюсь за столь глупый вопрос)

аватар answer@mail.ru · 01.01.1970 03:00

Почему бы не обратиться к :

The preferred way of wrapping long lines is by using Python's implied line continuation inside parentheses, brackets and braces. Long lines can be broken over multiple lines by wrapping expressions in parentheses. These should be used in preference to using a backslash for line continuation.

Предпочтительный способ обертывания длинных строк - использование подразумеваемого продолжения строки Python внутри скобок, скобок и фигурных скобок. Длинные строки можно разбить на несколько строк, заключив выражения в круглые скобки. Их следует использовать вместо использования обратной косой черты для продолжения строки.

Пример:

def get_message(self) -> str:    retu (f'Тип тренировки: {self.training_type}; '            f'Длительность: {self.duration:.3f} ч.; '            f'Дистанция: {self.distance:.3f} км; '            f'Ср. скорость: {self.speed:.3f} км/ч; '            f'Потрачено ккал: {self.calories:.3f}.')

PS кроме соответствия стандартам PEP-8, код должен быть легко-читаемым. Поэтому я разбил строки таким образом.

Последние

Похожие