@filatova_coder

Почему метод strip в Python так работает?

Метод strip обрезает в начале и в конце пробелы по умолчанию, либо строку, которая передана в качестве аргумента.
s = 'too the moon'
print(s.strip('on')) # Выведет 'too the m',  вместо предполагаемого 'too the mo'
s = 'too the moon'
print(s.strip('to')) # Выведет ' the moon',  вместо предполагаемого 'o the moon'

Почему такой результат?
  • Вопрос задан
  • 204 просмотра
Решения вопроса 1
@Stariyded
Сетевой админ
Набор символов это не только два символа, это их любое количество в указанном порядке - t и o после нее, до ближайшего пробела. Если вместо "to" или "on" взять "ton", от исходной строки останется только "the m" так как всё о между t и n удалятся (вместе с t и n).
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@U235U235
В документации по этому поводу ясно сказано, что аргумент функции - набор (set) символов, которые будут удалены в конце исходной строки.
Ответ написан
Комментировать
Vindicar
@Vindicar
RTFM!
либо строку, которая передана в качестве аргумента.

Не "строку", а "набор символов". Т.е. это указание на то, какие символы удалять, их порядок и число повторений не важно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы