Python 错误:TypeError String Indices Must be Integers 【已解决】

如果你尝试使用字符串值,而不是整数值来访问字典或可迭代对象的值,那么你将收到以下错误消息:

TypeError: string indices must be integers

在本文中,我将向你展示为什么会收到这个错误消息以及如何修复它的示例。

Python 访问 list 中的值

在下面例子中,我们有一个 instruments 列表:

instruments = ['flute', 'trumpet', 'oboe', 'percussion', 'guitar']

如果我们想访问列表中的第3个元素,我们将使用数字索引值2:

instruments[2]

下面的代码可以正确地打印出 oboe 的结果:

instruments = ['flute', 'trumpet', 'oboe', 'percussion', 'guitar']
print(instruments[2])

如果尝试访问同样的列表,但是使用了字符串索引 oboe ,那么它会导致一个错误消息:

instruments = ['flute', 'trumpet', 'oboe', 'percussion', 'guitar']
print(instruments['oboe'])

如果遇到此错误消息,请再次检查,确保使用数值索引值而不是字符串值访问元素。

如何在 Python 中访问 Dictionary 中的值

让我们修改前面的示例,创建一个 instrumentsquantities 的字典。

instruments = {'flute': 2,'trumpet': 5,'oboe': 1,'percussion': 4,'guitar': 9
}

如果我们想打印出字典 instruments 所有的值,我们可以使用循环与 .values() 方法。

for quantity in instruments.values():print(quantity)

如果我们移除 .values() 方法并尝试使用字符串索引访问这些值,那么我们将收到以下错误消息:

for quantity in instruments:print(quantity['flute'])print(quantity['trumpet'])print(quantity['oboe'])print(quantity['percussion'])print(quantity['guitar'])

如果你打印出 quantity ,那么你会看到它是一个字符串。

for quantity in instruments:print(quantity)

如果你试图写 quantity['flute'] ,那么它转换成 'flute'['flute'] ,这在 Python 中是没有意义的。

解决这个问题的方法是引用字典 instruments ,而不是使用 quantity

下面的重构代码将产生正确的结果:

instruments = {'flute': 2,'trumpet': 5,'oboe': 1,'percussion': 4,'guitar': 9
}print(instruments['flute'])
print(instruments['trumpet'])
print(instruments['oboe'])
print(instruments['percussion'])
print(instruments['guitar'])

我希望你喜欢这篇文章,并祝你在 Python 之旅中好运。

Python 错误:TypeError String Indices Must be Integers 【已解决】相关推荐

  1. Python错误:TypeError: string indices must be integers

    在项目遇到一个错误 : TypeError: string indices must be integers 由于是返回的接口数据,所以一时也分辨不出是哪里的错,然后我就还原了这样的场景: unico ...

  2. python之解析 yaml配置文件时TypeError: string indices must be integers

    #定义一个SuperLogin登录函数,传递3个形参数 def SuperLogin(lANIP,username, password):driver = webdriver.Chrome()driv ...

  3. python3 错误string indices must be integers 的解决方法

    这个错误意思是字符串的下标一定要是整数 出这种错误有多种可能,最形象直接的就是: a = '[abc]' print(a['0']) 有点pyhton基础的都知道下标怎么能是字符串'0',必须是整数0 ...

  4. 解决TypeError: string indices must be integers, not str

    遇到问题 ExtendValue = {"area": "1","info": "{\"year\": 201 ...

  5. TypeError: string indices must be integers

    1.错误描述 >>> print(st[-1,-6]); Traceback (most recent call last):File "<pyshell#13> ...

  6. python报错 TypeError: string indices must be integers

    所以在读取字典的时候,最好先判断类型,然后再查看它是否已经有这样的属性: type(mydict) == type({})             #检查不是字典 如果是字典,再看看有没有这样的属性: ...

  7. python string indices must be_python报错string indices must be integers,怎么解决?

    展开全部 python报错string indices must be integers解决如下: 在.py文件中写的data={"a":"123"," ...

  8. string indices must be integers错误原因

    string indices must be integers:字符串索引必须是整数 一.使用字符串为索引 a = [1, 2, 3, 4] print(a['0']) '0'为字符串,0才是整形.这 ...

  9. Python:Python3错误提示TypeError: slice indices must be integers or None or have an __index__ method解决办法

    Python:Python3错误提示TypeError: slice indices must be integers or None or have an __index__ method解决办法 ...

最新文章

  1. win10服务器权限修改时间,win10系统修改时间显示没权限的解决方案
  2. 使用树形结构保存实体
  3. LeetCode 72. Edit Distance--动态规划--Levenshtein Distance Algorithm--Java,Python解法
  4. matlab函数isempty_matlab基本函数inf, isempty, round, floor, fix
  5. php中使用phpmailer发送邮件
  6. sql的执行顺序 (where、groupby、having等)
  7. Spring Cloud Alibaba - 17 Nacos Config 配置中心 应用篇
  8. java选中一格_java-选中排序(新手)
  9. unity的自带特性
  10. React Native实现js调用安卓原生代码
  11. u9系统的使用方法仓库_用友U9--INV库存管理手册.pdf
  12. LintCode炼码刷题实操平台
  13. 如何有效预防宕机?你需要掌握这4个方法
  14. 精准验码,昂视助力锂电生产管理追溯
  15. 访问swagger2时出现空白页
  16. AWS CloudFront / 亚马逊CDN使用教程
  17. xdg在Linux中的用法,linux – 如何使用xdg-mime命令 - 程序园
  18. 有开始边DOTA边博客了
  19. 黑客入侵16进制密码_密码与密码黑客如何诱骗您入侵您的详细信息
  20. 两台windows主机共享文件的方法【简单有效】

热门文章

  1. php执行dmidecode,linux必学的命令
  2. 刘备比诸葛亮都强在什么地方
  3. 奇瑞新能源与宁德时代“强强联合”
  4. 了解今日头条推荐算法原理
  5. 素材模板|APP设计师,都喜欢用插画来设计一些APP UI界面
  6. Google Earth Engine(GEE)实例代码学习五——计算山体阴影(HillShade)
  7. 微服务 —— 消息服务中间件 JMS
  8. 蓝桥杯第十三届决赛真题-左移右移
  9. 【vue弹框和div拖拽功能】vue-elementul弹框拖拽功能,移动拖拽功能,普通div拖拽功能【拿来即用,直接复制】
  10. 计算机行业个人简历技能描述