解决:TypeError: ‘dict_keys’ object does not support indexing


解决:TypeError: ‘dict_keys’ object does not support indexing



文章目录

  • 解决:TypeError: 'dict_keys' object does not support indexing
    • 背景
    • 报错问题
    • 报错翻译
    • 报错位置代码
    • 报错原因
    • 解决方法
      • 方法一:
      • 方法二:
      • 方法三:
      • 今天的分享就到此结束了



背景

在使用之前的代码时,报错:
Traceback (most recent call last):
File “xxx”, line xx, in
lst[0] = 2
TypeError: ‘dict_keys’ object does not support indexing



报错问题


Traceback (most recent call last):
  File "xxx", line xx, in <module>
    lst[0] = 2
TypeError: 'dict_keys' object does not support indexing

截图如下:

在这里插入图片描述



报错翻译

主要报错信息内容翻译如下所示:


Traceback (most recent call last):
  File "xxx", line xx, in <module>
    lst[0] = 2
TypeError: 'dict_keys' object does not support indexing

翻译:

追溯(最近一次通话):
文件“xxx”,第xx行,在中
lst[0]=2
TypeError:“dict_keys”对象不支持索引



报错位置代码


lst[0] = 2



报错原因

经过查阅资料,发现python3以后的版本改变了dict.keys的返回值,返回的是dict_keys对象,不支持索引值,当使用索引对其进行修改操作时会如题报错TypeError: ‘dict_keys’ object does not support indexing。

小伙伴们按下面的解决方法即可解决!!!



解决方法

要解决这个错误,这里总结了以下几个解决办法。

方法一:

先将set转为列表或字典后修改对应元素后,再转为set元组

正确的代码是:

t = {'surfacing': 'a','surfacings': 'b'}
 
lst = t.keys()
lb = list(lst)
lb[0] = 2
b2 = set(lb)

方法二:

创建一个同结构的列表或字典,需要改的和不需要改的元组内的值对应放入list中,使用这个新的list即可

正确的代码是:

t = {'surfacing': 'a','surfacings': 'b'}
 
lst = t.keys()
lb = list(lst)
lb[0] = 2

方法三:

使用集合对象中的方法来访问其中的元素。正确的示例代码如下:

my_set = {1, 2, 3}
result = next(iter(my_set))  # 使用迭代器访问集合对象中的元素
print(result)  # 输出 1

在上述代码中,我们使用 iter() 函数和 next() 函数来创建一个迭代器对象,并使用它来访问集合对象中的第一个元素。然后我们将结果存储在变量 result 中,并使用 print() 函数将其输出到屏幕上。

注意,此错误还可能发生在尝试将集合对象视为可切片(slicable)对象时。在这种情况下,解决方法通常是检查代码中的集合操作,确保正确使用集合对象中的方法。



今天的分享就到此结束了

欢迎点赞评论关注三连

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/310927.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CES2024:智能戒指、全息技术、AI家居机器人等有趣的小工具

在CES2024的展会上上&#xff0c;我们见证了一系列充满创意和未来感的科技产品。从智能戒指到全息技术&#xff0c;再到AI家居机器人&#xff0c;这些有趣的小工具不仅展现了技术的进步&#xff0c;更预示着未来生活的可能性。现在就来给大家介绍九个实用有趣的小工具。 1、华…

单因素方差分析--R

任务说明 三个剂量水平的药物处理受试者&#xff0c;每个剂量水平十个受试者&#xff0c;现在收集到数据后&#xff0c;问&#xff1a; 药物剂量水平显著影响受试者的response&#xff1f; 或者不同剂量药物处理受试者有显著效果的差异吗&#xff1f; 数据 library(tidyvers…

stable diffusion代码学习笔记

前言&#xff1a;本文没有太多公式推理&#xff0c;只有一些简单的公式&#xff0c;以及公式和代码的对应关系。本文仅做个人学习笔记&#xff0c;如有理解错误的地方&#xff0c;请指出。 资源 本文学习的代码&#xff1b;相关文献&#xff1a; Denoising Diffusion Probab…

Linux学习之网络编程1(纯理论)

写在前面 刚刚更新完Linux系统编程&#xff0c;特别推荐大家去看的Linux系统编程&#xff0c;总共44个小时&#xff0c;老师讲的非常好&#xff0c;我是十天肝完的&#xff0c;每天大概看20集&#xff0c;每天还要以写blog的形式来写笔记来总结一下&#xff0c;虽然这十天有点…

ubuntu18.04 TensorRT 部署 yolov5-7.0推理

文章目录 1、环境配置2、推理部分2.1、检测2.2、分类2.3、分割2.4、INT8 量化 1、环境配置 链接: TensorRT cuda环境安装 2、推理部分 下载yolov5对应版本的包 https://github.com/wang-xinyu/tensorrtx/tree/master/yolov5 2.1、检测 1、源码模型下载 git clone -b v7.0 …

Python—使用LangCahin调用千帆大模型

文章目录 前言一、安装LangChain二、获取千帆API Key、Secret Key三、简单对话案例实现四、构建语言模型应用程序:LLM1.初始化模型2.LLM初始化和调用 五、提示词模板&#xff08;PromptTemplate&#xff09;: 管理 LLM 的提示1.定义提示模板2.组合 LLM 和提示词3.组合输出解析器…

浮动差价这么受欢迎Anzo Capital找了1个理由

在交易市场中&#xff0c;浮动差价是如今最常见的差价类型&#xff0c;也是最受欢迎的的差价类型。Anzo Capital认为它受欢迎的理由只有一条&#xff0c;那就是因为它对参与交易的各方都有利可图。 不仅是交易者本身&#xff0c;就连经纪人和交易商这三者都可以同时受益&…

Apipost接口自动化测试如何操作

Apipost提供可视化的API自动化测试功能&#xff0c;使用Apipost研发人员可以设计、调试接口&#xff0c;测试人员可以基于同一数据源进行测试&#xff0c;Apipost 接口自动化功能在上次更新中进行了逻辑调整&#xff0c;带来更好的交互操作、更多的控制器选择&#xff0c;同时新…

【python】内存管理和数据类型问题

一、内存管理 Python有一个自动内存管理机制&#xff0c;但它并不总是按照期望的方式工作。例如&#xff0c;如果创建了一个大的列表或字典&#xff0c;并且没有删除它&#xff0c;那么这个对象就会一直占用内存&#xff0c;直到Python的垃圾回收器决定清理它。为了避免这种情…

记录仪可作为XCP从站进行数据转发

车辆数据采集系统通常包含多种数据采集设备、多路总线或传感器信号&#xff0c;为了集中监控和管理&#xff0c;需要将这些设备的实时数据传输到上位机。对此&#xff0c;我们将使用基于XCP&#xff08;Universal Measurement and Calibration Protocol&#xff09;协议的数据记…

redis复习笔记03(小滴课堂)

Redis6常见数据结构概览 0代表存在&#xff0c;1代表不存在。 1表示删除成功&#xff0c;0表示失败。 查看类型&#xff0c;默认string类型。 也可以设置set类型。 list类型。 查看key的过期时间&#xff1a; Redis6数据结构之String类型介绍和应用场景 批量设置&#xff1a; …

期待!《数字化运维路线图》震撼发布(第一部分)

在时代的激流中&#xff0c;数字化浪潮奔涌而至&#xff0c;机遇与挑战在此交汇。各行业正步入持续变革阶段&#xff0c;一场技术的竞争与博弈正拉开帷幕。科技革命与产业变革如同疾风骤雨&#xff0c;加速进行&#xff0c;市场格局在不断重塑。各类因素叠加之下&#xff0c;一…

搜维尔科技:【简报】元宇宙数字人赛道,《全息影像技术应用》!

期待着看展的主角来到今天要参观的全息影像展&#xff0c;平时就喜欢看展的她对于所谓的全息影像非常好奇&#xff0c;于是她带着期待的心情进入展内。进入展内的主角看到的是与之前完全不同的画展&#xff0c;每幅画看起来就像真的一样&#xff0c;充满好奇的她在展览的各处游…

千问写作——论文写作

【千问写作】 千问写作是运用通义千问720亿参数的语言模型&#xff08;qwen-72b-chat&#xff09;进行基于目录的论文创作&#xff0c;通过python-docx设置文档格式然后写出文档 &#xff0c;其他免费模型&#xff08;qwen-1.8b-chat&#xff09;暂时无法生成目录 1. 请求延时 …

怎么做UI自动化测试?不会代码也可以?

UI自动化测试已经成为现代软件开发过程中不可或缺的一部分。它能够提供诸多优势&#xff0c;包括提高测试效率、减少人力成本、提升软件质量等。同时&#xff0c;可视化工具为UI自动化测试带来了更多便利和灵活性。然而&#xff0c;可视化工具也存在一些潜在的劣势。本文将探讨…

工程中的SOVD——从ECU到车辆

SOVD标准正在改变诊断方式&#xff0c;特别是在互联网上当多个合作方进行交互时&#xff0c;其提供了很大的优势。在开发的早期阶段&#xff0c;需要使用附加的方法来利用这个标准&#xff0c;因为该标准并不是专为ECU诊断而开发的&#xff0c;而且还需格外注意数据的处理&…

在统信UOS Linux下用opencv-python捕获摄像头输入保存到视频文件

☞ ░ 前往老猿Python博客 ░ https://blog.csdn.net/LaoYuanPython 一、引言 老猿在CSDN的《opencv-python图形图像处理入门基础知识》介绍了一个利用电脑摄像头获取输入视频生成到文件的案例&#xff0c;这个案例当时基于windows的。在《统信UOS Linux下安装opencv-python过…

软件测评中心▏性能测试之压力测试、负载测试的区别和联系简析

在如今的信息时代&#xff0c;软件已经成为人们日常工作和生活不可或缺的一部分。然而&#xff0c;随着软件的发展和应用范围的不断扩大&#xff0c;软件性能的优劣也成为了影响用户使用体验的重要因素。 软件性能测试即对软件在不同条件下的性能进行评估和验证的过程。通过模…

Kubernetes/k8s的存储卷/数据卷

k8s的存储卷/数据卷 容器内的目录和宿主机的目录挂载 容器在系统上的生命周期是短暂的&#xff0c;delete&#xff0c;k8s用控制创建的pod&#xff0c;delete相当于重启&#xff0c;容器的状态也会回复到初始状态 一旦回到初始状态&#xff0c;所有的后天编辑的文件都会消失…

门店管理系统驱动智慧零售升级

在当今数字化经济的大潮中&#xff0c;实体门店正在经历一场由内而外的深度变革。门店管理系统以其高效、便捷和全面的功能特性&#xff0c;为实体店提供了高效的运营解决方案。 门店管理系统拜托了传统零售业对本地化软件的依赖&#xff0c;它将复杂的信息技术转化为易于获取…