[New-bugs-announce] [issue23416] Make urllib.parse.SplitResult etc arguments optional
Martin Panter
report at bugs.python.org
Mon Feb 9 05:03:57 CET 2015
New submission from Martin Panter:
This would be a simple API enhancement and would allow easier building of URLs, like
>>> SplitResult("rtp", address, query=urlencode(query)).geturl()
"rtp://localhost:5004?rtcpport=5005"
It seems the best way to do this at the moment is annoyingly verbose:
SplitResult("rtp", address, path="", query=urlencode(query), fragment="").geturl()
The way hinted by the documentation can leave an ugly empty query string:
>>> query = ()
>>> "rtp://%s?%s" % (address, urlencode(query))
"rtp://localhost:5004?"
This enhancement would also allow easy parsing of usernames, ports, etc:
>>> SplitResult(netloc="[::1]:0").hostname
"::1"
>>> SplitResult(netloc="[::1]:0").port
0
Looking at the code, I think this could be implemented by adding an explicit constructor to each of the concrete classes, with arguments defaulting to "" or b"" as appropriate.
----------
components: Library (Lib)
messages: 235584
nosy: vadmium
priority: normal
severity: normal
status: open
title: Make urllib.parse.SplitResult etc arguments optional
type: enhancement
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue23416>
_______________________________________
More information about the New-bugs-announce
mailing list