tsangpo <[email protected]> wrote:
>
> "kj" <[email protected]> 写入消息 news:[email protected]...
> > In <[email protected]> "tsangpo"
> > <[email protected]> writes:
> >
> >>I want to ensure that the url ends with a '/', now I have to do thisa like
> >>below.
> >>url = url + '' if url[-1] == '/' else '/'
> >
> >>Is there a better way?
> >
> > It's a pity that in python regexes are an "extra", as it were.
> > Otherwise I'd propose:
> >
> > url = re.sub("/?$", "/", url)
> >
> > kynn (lowest-of-the-low python noob)
>
> look nice, but:
>
> >>> re.sub('/?$/', '/', 'aaabbb')
> 'aaabbb'
>
> has no effect. what a pity.
That is because you typoed what kynn wrote.
>>> re.sub('/?$', '/', 'aaabbb')
'aaabbb/'
>>>
That solution is very perl-ish I'd say, IMHO
if not url.endswith("/"):
url += "/"
is much more pythonic and immediately readable. In fact even someone
who doesn't know python could understand what it does, unlike the
regexp solution which requires a little bit of thought.
--
Nick Craig-Wood <[email protected]> -- http://www.craig-wood.com/nick
--
http://mail.python.org/mailman/listinfo/python-list