Способность к цепочке (метод каскадирования) поощряется или не одобряется Пепом? - PullRequest
0 голосов
/ 01 апреля 2019

вдохновленный этим постом , я предполагаю, что PEP8 препятствует связному методу (метод каскадирования).

встроенные модули являются доказательством.

>>> x = list()
>>> x.append(1).append(2)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'NoneType' object has no attribute 'append'

но я не нашел соответствующий документ при поиске по pep

есть идеи?

1 Ответ

1 голос
/ 01 апреля 2019

PEP 8 оставляет сервальные вещи на ваше усмотрение, чтобы решить, как лучше всего расположить ваш код. Ключевой темой является то, что ваш код должен быть четким и читабельным. Приведенный вами пример не работает, так как .append ничего не возвращает.

Вот пример со строками:

x = "This"
x = x.strip().replace("T","t")
print (x)

Что может быть проще для чтения в следующем макете:

x = "This"
x = (x
     .strip()
     .replace("T","t")
     )
print (x)
...