我知道有几个关于各种python列表的帖子,但是我尝试了大量的东西并没有完成得到我想要的东西.
我的代码:
list = []
things = re.findall('<a class="th tooltip" data-rel=.*? href="(.*?)".*?> <img src="(.*?)" alt="(.*?)" .*?', content, re.DOTALL)
for url, image, name in things:
list.append({'url': url, 'image': image, 'name': name})
Run Code Online (Sandbox Code Playgroud)
现在我想按名称对此列表进行排序.我找到了几个说明要使用的帖子,list.sort(key=)但我不知道我应该用什么键.我试过的一切都导致了KeyError.
如果我复制已经解决的帖子,我很抱歉,但我找不到合适的解决方案.
提前致谢.
name使用 lambda 表达式,lambda 表达式会获取字典作为参数,然后你可以从字典中返回元素-
lst.sort(key=lambda x: x['name'])
Run Code Online (Sandbox Code Playgroud)
另外,请不要使用list变量的 as 名称,它会覆盖内置list函数,这可能会在尝试使用list(..)函数时导致问题。
| 归档时间: |
|
| 查看次数: |
2053 次 |
| 最近记录: |