Mar*_*son 3 python list-comprehension python-2.7
我有一个网址列表,我想要净位置.
urls = ["http://server1:53000/cgi-bin/mapserv?map=../maps/Weather.wms.map",
"http://server2:53000/cgi-bin/mapserv?map=../maps/Weather.wms.map"]
Run Code Online (Sandbox Code Playgroud)
我通常会写这样的东西:
servers = []
for url in urls:
o = urlparse(url)
servers.append(o.netloc)
Run Code Online (Sandbox Code Playgroud)
然后我立刻想到,"我应该把它理解为"并继续写这个(当然这不起作用):
servers = [o.netloc() for urlparse(url) as o in urls]
Run Code Online (Sandbox Code Playgroud)
python有办法做这种复杂的理解吗?(也许在3.x?)
在更具学术性的层面上,这种复杂的理解能否与"pythonic"相距甚远?这对我来说似乎相对直观,但我之前完全偏离了这些事情.
无需分配中间名称,只需直接访问.netloc返回值的属性urlparse():
servers = [urlparse(url).netloc for url in urls]
Run Code Online (Sandbox Code Playgroud)
以这种方式做这是一个完美的pythonic事情.
| 归档时间: |
|
| 查看次数: |
371 次 |
| 最近记录: |