Rstrip() удаляет больше, чем следует в PythonPython

Программы на Python
Ответить
Anonymous
 Rstrip() удаляет больше, чем следует в Python

Сообщение Anonymous »

Код: Выделить всё

k = '9\t10\t12314\t12\t13\t14\t'
print(k.rstrip('\t12\t13\t14\t'))
Для этого кода я ожидал следующий результат:

Код: Выделить всё

9       10      12314
Но результат, который я получаю при запуске этого кода: Замена 12314 любой последовательностью целых чисел от 1 до 4 приводит к такому же ошибочному выводу, но в тот момент, когда оно достигает целого числа больше 5, строка перестает удаляться. Например, если мы добавили 5 между 12314:

Код: Выделить всё

k = '9\t10\t123514\t12\t13\t14\t'
print(k.rstrip('12\t13\t14\t'))
Приводит к результату:

Код: Выделить всё

9       10      1235
Было бы полезно объяснить, почему это происходит. Я попытался найти код функции rstrip(), но не нашел ничего полезного, но, возможно, это просто потому, что я не слишком часто копаюсь в исходном коде. Кроме того, мне удалось воссоздать это в Python 3.x, а также в Python 2.x, насколько я знаю, это не зависит от версии.

Подробнее здесь: https://stackoverflow.com/questions/645 ... -in-python
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»