Форум сайта python.su
Как лучше убрать замыкающий ‘/’ в url, если он существует?
Офлайн
[url, url[:-1]][url.endswith('/')]
Офлайн
Ed, o_O
url.endswith('/') and url[:-1] or url
>>> [1, 2][True] 2 >>> [1, 2][False] 1
url.rstrip('/')
Отредактировано fata1ex (Июнь 22, 2012 21:13:32)
Офлайн
А так что плохо ? [code python]if url[-1] == "/": url = url[:-1][/code]
Отредактировано Singularity (Июнь 23, 2012 11:41:39)
Офлайн
У fata1ex 2-й вариант самый читаемый и понятный даже не питонистам :)
Отредактировано Lexander (Июнь 23, 2012 12:14:11)
Офлайн
>>> url = ''
>>> if url[-1] == "/":
... url = url[:-1]
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: string index out of range
Офлайн
lorien: ну плюс одна проверка на соответствия None , но это ведь лучше чем спрашивать на форуме. Хотя да докa рулит
Офлайн
ну плюс одна проверка на соответствия NoneНе надо ничего проверять, надо rstrip использовать.
Офлайн
Кстати if url == ‘/’ более питонично записывается так: if url.endswith('/')
Офлайн
а какой смысл оставлять предпоследние слеши ?
Офлайн