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

如何在Python字典中移除特殊字符

问题原因
  • 你定义的output是列表嵌套字典的结构,无法直接通过output['title']读取字段,列表仅支持整数索引,需要先遍历列表拿到每个字典元素
  • 你写的推导式语法不合法,且待处理的title本身是字符串类型,无需迭代每个字符,直接对整个字符串调用replace方法即可
  • 示例中subject字段存在两种格式(单个字符串/字符串列表,且你给出的示例第一条subject存在语法错误,默认修正为列表类型处理),需要兼容不同类型做处理
实现代码

首先修正后的合法示例数据:

output = [
    {'title': 'title 1‌',
     'subject': ['subject1‌','a']},
    {'title': 'title 1‌',
     'subject': ['subject1‌','a','b']}
]

处理逻辑:

def remove_u200c(value):
    # 处理字符串类型
    if isinstance(value, str):
        return value.replace("\u200c", "")
    # 处理字符串列表
    elif isinstance(value, list):
        return [remove_u200c(item) for item in value]
    # 其他类型直接返回
    return value

# 遍历列表中的每个字典
for dict_item in output:
    dict_item['title'] = remove_u200c(dict_item['title'])
    dict_item['subject'] = remove_u200c(dict_item['subject'])
验证效果

执行后打印output即可看到所有字段中的\u200c零宽字符已被移除:

print(output)
# 输出:
# [{'title': 'title 1', 'subject': ['subject1', 'a']}, {'title': 'title 1', 'subject': ['subject1', 'a', 'b']}]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 07:36:04