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

Python输入字符串转字典列表时输出末尾多余},如何去除

问题原因
  • 存在冗余代码:外层遍历str_arr的for循环完全无效,列表生成式直接对完整输入字符串做处理,不需要遍历单个字符
  • 拼接逻辑错误:你用"}, "作为分隔符拆分字符串后,得到的每段内容本身已经不带分隔符,后续主动拼接'},'是导致末尾多余符号的直接原因
  • 输入的字典列表格式字符串首尾自带[、]标识,拆分后首段开头会残留[、末段末尾会残留],需要额外清洗
修复方案

优先推荐用内置json模块解析,这是处理标准JSON格式字典列表输入最稳妥的方案,不需要手动处理字符串拆分:

import json

str_arr = input()
# 直接将合法JSON格式的输入字符串转换为Python列表对象
dict_list = json.loads(str_arr)

print(len(dict_list))
for item in dict_list:
    # 需要输出字典字符串形式直接转str即可
    print(str(item))

如果你坚持要手动拆分字符串处理,可以按如下逻辑修改代码:

str_arr = input().strip()
d = "}, "
# 先移除字符串首尾的列表标识[]
content = str_arr.lstrip("[").rstrip("]")
# 拆分后仅补全缺失的右大括号,不要额外加逗号
new_str = [e.strip().rstrip("}") + "}" for e in content.split(d) if e]

print(len(new_str))
for i in new_str:
    print(i)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 14:36:01