Округление даты POSIX (POSIXct) с базовой функциональностью R

Объяснение того, как / почему он работает таким образом, было дано в другом месте, но не упоминается о каких-либо преимуществах для этого.

Интересное преимущество этого может иметь место, когда методы возвращают экземпляр класс. Например, многие из методов в строке возвращают экземпляр строки. Поэтому вы можете объединить несколько вызовов методов. Например:

escaped_html = text.replace('&', '&amp;').replace('<', '&lt;').replace('>'. '&gt;')

Однако иногда передаваемые аргументы могут быть довольно длинными, и было бы неплохо обернуть вызовы на несколько строк. Возможно, вот так:

fooinstance \
    .bar('a really long argument is passed in here') \
    .baz('and another long argument is passed in here')

Конечно, для работы над ним нужна новая строка \, что не идеально. Тем не менее, это потенциально полезная причина для этой функции. Фактически, в некоторых других языках (где все / большинство пробелов несущественны), довольно часто встречается код, отформатированный таким образом.

Для сравнения, в Python мы обычно видели это:

fooinstance = fooinstance.bar('a really long argument is passed in here')
fooinstance = fooinstance.baz('and another long argument is passed in here')

Каждый имеет свое место.

30
задан Community 23 May 2017 в 12:17
поделиться