猿问

Python,列表理解,过滤列表中的单个元素

很多时候,在 Python 中编程时,我需要过滤列表中的单个元素。


为此,我使用以下代码模式:


user1 = {'email': 'admin@example.io', 'role': 'admin'}

user2 = {'email': 'xuser@example.io', 'role': 'user'}

user3 = {'email': 'yuser@example.io', 'role': 'user'}

users = [user1, user2, user3]


temp = [x for x in users if x['role'] == 'admin']

admin = temp[0] if temp else None

有没有更优雅的 Pythonic 方式将最后两行放入其中?


慕盖茨4494581
浏览 84回答 1
1回答

梵蒂冈之花

使用下一个:admin = next((x for x in users if x['role'] == 'admin'), None) print(admin)输出{'email': 'admin@example.io', 'role': 'admin'}
随时随地看视频慕课网APP

相关分类

Python
我要回答