You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python编写接收字典列表并返回字符串列表的函数

实现extract_names函数的两种方法

一、修正你的循环实现

你的现有代码仅打印了字典的值列表,未处理目标字符串格式,也没有收集结果返回。以下是修正后的代码:

def extract_names(name_list):
    full_names = []
    for person in name_list:
        # 提取名和姓,将姓的首字母大写
        first_name = person['first']
        last_name = person['last'].capitalize()
        full_names.append(f"{first_name} {last_name}")
    return full_names

# 测试示例
name = [{"first":"john","last":"doe"},{"first":"jane","last":"doe"}]
print(extract_names(name))  # 输出: ['john Doe', 'jane Doe']

二、用map函数实现

map函数可将处理逻辑批量应用到列表的每个元素上,配合lambda表达式能进一步简化代码:

方式1:单独定义处理函数

def format_full_name(person):
    return f"{person['first']} {person['last'].capitalize()}"

def extract_names(name_list):
    # 将map对象转为列表返回
    return list(map(format_full_name, name_list))

# 测试示例
name = [{"first":"john","last":"doe"},{"first":"jane","last":"doe"}]
print(extract_names(name))  # 输出: ['john Doe', 'jane Doe']

方式2:使用lambda简化

def extract_names(name_list):
    return list(map(lambda p: f"{p['first']} {p['last'].capitalize()}", name_list))

# 测试示例
name = [{"first":"john","last":"doe"},{"first":"jane","last":"doe"}]
print(extract_names(name))  # 输出: ['john Doe', 'jane Doe']

内容的提问来源于stack exchange,提问作者Karizkhan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 19:24:10