python-3.x - 如何从字典列表中返回字符串
问题描述
我为以下内容编写了一个程序:
给定一个用户列表,编写一个函数 names_and_roles,它以字符串形式返回所有用户的名称和角色,每个值都被标记。
我不符合该计划的问题要求。我猜这是因为我返回了一个字典列表。我怎样才能返回一个字符串,使我的输出看起来一样?
users = [
{
'name': 'Homer',
'role': 'Clerk',
'dob': '12/02/1988',
'admin': False
},
{
'name': 'Lisa',
'role': 'Staff',
'dob': '01/30/1965',
'admin': False
},
{
'name': 'Marge',
'role': 'Associate',
'dob': '09/10/1980',
'admin': True
}
]
def names_and_roles(some_users):
employees = {some_user['name']:some_user['role'] for some_user in users}
return employees
employee_list = (names_and_roles(users))
for user, role in employee_list.items():
print("Name:", user)
print("Role:", role)
print("\n")
解决方案
有很多方法可以做到这一点。在发布您的问题之前,您可能应该尝试一些事情,但这里是例如:
["Name: {}, Role: {}".format(u['name'], u['role']) for u in users]
或者如果它需要是一个大字符串:
sep = "\n"
sep.join("Name: {}, Role: {}".format(u['name'], u['role']) for u in users)
推荐阅读
- mysql - mysql认证
- regex - SED - 当文件中不存在特定字符串时,在特定模式后插入保存的值
- c# - 在周一至周日上午 7:20 至晚上 8:30 之间每 x 分钟触发一次的 Cron 表达式
- graphics - 3d 引擎如何决定多边形在模型中的位置?
- python - 尝试使用数据库查询时,Django 通道 Async Websocket 抛出错误
- python - 如何在 Python/Opencv 中模拟按键?
- html - 响应式图像顶部的响应式文本叠加
- javascript - 无法在嵌套组件上设置道具
- eclipse - AWS Toolkit for Eclipse 2.0 IAM 角色支持?
- java - 对 blob 使用对象存储