python – 是否可以在列表推导中创建和引用对象?
发布时间:2020-12-20 12:11:06 所属栏目:Python 来源:网络整理
导读:我有一个网址列表,我想要净位置. urls = ["http://server1:53000/cgi-bin/mapserv?map=../maps/Weather.wms.map","http://server2:53000/cgi-bin/mapserv?map=../maps/Weather.wms.map"] 我通常会写这样的东西: servers = []for url in urls: o = urlparse(
我有一个网址列表,我想要净位置.
urls = ["http://server1:53000/cgi-bin/mapserv?map=../maps/Weather.wms.map","http://server2:53000/cgi-bin/mapserv?map=../maps/Weather.wms.map"] 我通常会写这样的东西: servers = [] for url in urls: o = urlparse(url) servers.append(o.netloc) 然后我立刻想到,“我应该把它理解为”并继续写这个(当然这不起作用): servers = [o.netloc() for urlparse(url) as o in urls] python有办法做这种复杂的理解吗? (也许在3.x?) 在更具学术性的层面上,这种复杂的理解能否与“pythonic”相距甚远?这对我来说似乎相对直观,但我之前完全偏离了这些事情. 解决方法
无需分配中间名称,只需直接访问urlparse()返回值的.netloc属性:
servers = [urlparse(url).netloc for url in urls] 以这种方式做这是一个完美的pythonic事情. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |