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

为何处理类JSON输入时出现‘TypeError: string indices must be integers’错误?

问题分析与解决

核心问题拆解

  • 输入格式不符合JSON规范:你给出的{'server': 'apple'}是Python字典的语法,不是标准JSON——JSON强制要求所有键名和字符串值必须使用双引号,正确的JSON格式应为{"server": "apple"}。
  • 报错的直接原因:你的代码里把这段内容当成了字典,用['server']的方式去访问,但实际上它是字符串类型(比如你可能用引号把这段内容包裹后赋值给了变量)。字符串只能通过整数下标(如str[0])访问,用字符串作为下标自然会触发TypeError: string indices must be integers。

解决办法

根据你的使用场景选择对应方案:

  1. 直接用Python字典:如果是在Python代码里定义数据,直接去掉外层引号,把它作为字典对象使用:
data = {'server': 'apple'}
print(data['server'])  # 正常输出apple
  1. 解析JSON字符串:如果这是从外部获取的JSON格式字符串,先确保它是标准双引号格式,再用json模块解析成字典:
import json
# 确保是标准双引号格式的JSON字符串
json_str = '{"server": "apple"}'
data = json.loads(json_str)
print(data['server'])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 19:26:28