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

Python如何处理灵活关键字输入并返回全大写的键名列表

问题原因分析
  • 你尝试的代码报错主要有两个问题:
    1. kwargs.items() 遍历得到的每个元素是 (键名, 键值) 格式的元组,元组没有 upper() 方法,直接调用会触发 AttributeError
    2. 需求只需要返回转换后的键名列表,不需要修改原 kwargs 对象,不需要调用 update 方法
正确实现代码

用列表推导式就能简洁完成转换,代码如下:

def uppercase_keys_from_kwargs(**kwargs) -> list:
    # 直接遍历所有键,转大写后收集为列表
    return [key.upper() for key in kwargs.keys()]

如果不习惯列表推导式,也可以用普通循环实现,逻辑完全一致:

def uppercase_keys_from_kwargs(**kwargs) -> list:
    list_for_keys_only = []
    for key in kwargs.keys():
        list_for_keys_only.append(key.upper())
    return list_for_keys_only
运行效果验证

执行测试用例输出完全符合预期:

>>> uppercase_keys_from_kwargs(twn='Taiwan')
['TWN']
>>> uppercase_keys_from_kwargs(twn='Taiwan', jpn='Japan')
['TWN', 'JPN']
>>> uppercase_keys_from_kwargs(twn='Taiwan', jpn='Japan', ltu="Lithuania")
['TWN', 'JPN', 'LTU']
>>> uppercase_keys_from_kwargs(twn='Taiwan', jpn='Japan', ltu="Lithuania", svn='Slovenia')
['TWN', 'JPN', 'LTU', 'SVN']

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 10:15:02