在工作中遇到需要对DataFrame加上列名和行名,不然会报错 开始的数据是这样的 需要的格式是这样的: 其实,需要做的就是添加行名和列名,下面开始操作下。
Python中的所有实例必须是从BaseException派生的类的实例。通过子类不相关的两个异常类,即使它们具有相同的名称,也永远不会等效。内置异常可以由解释器或内置函数生成。...错误发生时,Python中会引发一些内置的异常。...'Hello ', data 输出: 输入名称:Hello 软件测试test 输入名称:Traceback(最近一次通话): 文件“ exceptions_EOFError.py”,第13行,...当在一组现有键中找不到映射键时,引发KeyError。...例如,不合格的变量名。
前言 本系列课程是针对无基础的,争取用简单明了的语言来讲解,学习前需要具备基本的电脑操作能力,准备一个已安装python环境的电脑。如果觉得好可以分享转发,有问题的地方也欢迎指出,在此先行谢过。...少了括号,一般会在下一行报错。 ? 将关键词用来作为变量名 ? 等于号和赋值符号弄混了 ? 3.TypeError 类型错误,数字和字符进行运算操作,调用函数参数传递少了。 ? ?...7.KeyError 访问不存在的键值 ? 8.其它错误 分母不能为零。 ? 打开文件时,找不到文件。 ?...运行过程中报错,语法都是没问题的,因为我们不清楚python递归最多可以到多少层,所以当超过最大998时就报错了。 ?
深度学习遇到的一系列bug VScode无法激活conda 打开vscode,选择左上角的文件—首选项—设置 点击右上角的小图标 进入setting.json后,添加一行代码,重启VScode...而val是网络模型在训练过程中进行测试时使用的文件名。...4.object has no attribute ‘cache‘ 将yolox/data/datasets/voc.py下的190行左右 @cache_read_img def read_img(..._imgpath % self .ids[i]).split(self.root + “\\”) 5.KeyError:‘model’ 找不到权重文件,进行权重文件(.pth)的更换即可 6....No module named loguru 激活环境,输入 pip install loguru -i https://pypi.tuna.tsinghua.edu.cn/simple 7.Python
Python Traceback 信息一览 每个 Python 的 Traceback 信息都有几个重要的部分。下图显示了各个组成部分: 蓝框:Traceback 的最后一行为错误消息行。...这里也告诉大家,以后定义变量名的时候也要主要规范问题,否则就容易出现这种,期望类型错误的情况。...KeyError 与 IndexError 类似,当你访问映射(通常是 dict )中不包含的键时,就会引发 KeyError。...: 'b' KeyError 的错误消息行给出找不到关键字 b。...一般在拼写变量名出现问题时会引发这种错误。 SyntaxError 当代码中有不正确的 Python 语法时,就会引发 SyntaxError。 下面的问题是函数定义行末尾缺少一个冒号。
dict类型可以说是python里模块的命名空间,实例的属性,函数的关键字参数都有其的参与。...b = {index:element for index,element in enumerate(a)} b Out[5]: {0: 1, 1: 2, 2: 3, 3: 4, 4: 5} 如何处理查找不到的键...: 用setdefault处理找不到的键,可以避免tey/except方法 正常来说,一个字典里面没有的键: b Out[5]: {0: 1, 1: 2, 2: 3, 3: 4, 4: 5} b[5]...(key) 就会出现如下错误: RecursionError: maximum recursion depth exceeded while calling a Python object 因为self...在添加键的时候会保持顺序,popitem是默认删除最 ChainMap:可容纳数个不同的映射对象,在进行键查找时会被作为一个整体查找 Counter:会给键准备一个计数器,用于计数键的更新次数 UesrDict:用纯python
Python 程序中最常见的错误原因是某个语句不符合规定的用法。这种错误称为语法错误。Python 解释器会立即报告它,通常会附上原因。...Python 库中定义了许多内置的异常。让我们看看一些常见的错误类型。 下表列出了 Python 中重要的内置异常。 例外 描述 断言错误 assert 语句失败时引发。...导入错误 找不到导入的模块时引发。 索引错误 当序列的索引超出范围时引发。 键错误 在字典中找不到键时引发。 键盘中断 当用户点击中断键(Ctrl+c 或 delete)时引发。...KeyError。... "", line 1, in D1['4']KeyError: '4' Copy 导入错误 找不到指定函数时抛出ImportError。
抛出异常的时候,首先有「跟踪记录」或者叫「回溯」,后面显示异常的详细信息,包括异常所在的位置,最后一行是异常类型及导致异常的原因。...我在这说几个常见的类型: NameError 尝试访问一个没有申明的变量 ZeroDivisionError 除数为零 SyntaxError 语法错误 IndexError 索引超出序列范围 KeyError...2.IndexError & KeyError >>> a = [1,2,3] >>> a[4] Traceback (most recent call last): File "",...name':'rocky'} >>> b['age'] Traceback (most recent call last): File "", line 1, in KeyError...要对你的计算机进行全身搜查,所以 Python 会按照你指定的未知去找,找不到就会出现异常。
简单说明原理 python语言中的dict底层是基于hashmap结构实现的,dict的使用就不说了。...函数先算出index,即存储在哪条列表中,插入时则直接append,查找时则根据equals方法将待查找的key与列表中的所有元组的第一个值(key)进行比较,找到相等的则返回元组的第二个值(value),找不到则...raise KeyError异常。...[index]: if self.equals(key, item[0]): return item[1] # 找不到...key,则抛出KeyError异常 raise KeyError def __setitem__(self, key, value): """支持以 myhash
Python异常处理:让你的程序更稳定 这两天在赶一个线上的程序,用python比较多,整理一点python异常相关的内容。...02 python中的常见异常 在写程序的过程中,会遇到各种各样的异常,例如: keyError:代表字典里面找不到值; FileNotFoundError:读取文件的时候,文件不存在; ZeroDevisionError...同时需要注意,最后一行的print语句也没有执行。...---场景二---- d = {'name': 'jason', 'age': 20} try: value = d['dob'] except KeyError as err: print...('KeyError: {}'.format(err)) 字典的key值解析这种写法也可以,但是显得有点繁琐 最好的写法是: if 'dob' in d: xxxxx ?
Python 字典提供了散列查询的功能,使用灵活效率高,本文记录相关内容。...比 如,dd 是个 defaultdict,k 是个找不到的键, dd[k] 这个表达 式会调用 default_factory 创造某个默认值,而 dd.get(k) 则会 返回 None。...它会在 defaultdict 遇到找不到的键的时候调用 default_factory,而实际 上这个特性是所有映射类型都可以选择去支持的。...__missing__ 所有的映射类型在处理找不到的键的时候,都会牵扯到 __missing__ 方法。这也是这个方法称作“missing”的原因。...也就是说,如果 有一个类继承了 dict,然后这个继承类提供了 __missing__ 方法,那 么在 __getitem__ 碰到找不到的键的时候,Python 就会自动调用它, 而不是抛出一个 KeyError
用 setdefault 处理找不到的键 当字典 d[k] 不能找到正确的键的时候,Python 会抛出异常,平时我们都使用d.get(k, default)来代替 d[k],给找不到的键一个默认值,还可以使用效率更高的...不过,如果有一个类继承了 dict ,然后这个继承类提供了 __missing__ 方法,那么在 __getitem__ 碰到找不到键的时候,Python 会自动调用它,而不是抛出一个 KeyError...KeyError raiseKeyError(key) # 如果找不到的键不是字符串,转化为字符串再找一次 returnself[str(key)] defget(self,key,default=None...的形式委托给 __getitem__,这样在宣布查找失败钱,还能通过 __missing__ 再给键一个机会 try: returnself[key] exceptKeyError: # 如果抛出 KeyError...若表元为空,抛出 KeyError 异常。若不为空,则表元会有一对 found_key:found_value。
不存在的时候返回的内容; 2.增加和修改元素: d['a'] = 3 //修改和增加元素的方法都是这个 3.删除元素: d.pop('c') //删除的同时返回删除的内容 >如果删除不存在的key会报KeyError...,这个时候就需要给定返回值 d.pop('c', 'information') help(d.pop) >这样返回的就是information,不会报KeyError错误; d.popitem()...splitlines 11111111 //这里总共是4行,按照换行符算,第一行也有换行符 22222222 33333333 ''' s.splitlines...f.count('r') //统计有多少个r,如果是多个字符就是多个字符进行匹配统计 f.find('fs') //从左开始查找第一次匹配到的位置; 找不到会返回...-1 f.find('fs', 2, 4) //设置 [开始] [结束] 位置 f.index('fs') //从左开始查找第一次匹配到的位置;找不到会返回ValueError
⭐本专栏旨在对Python的基础语法进行详解,精炼地总结语法中的重点,详解难点,面向零基础及入门的学习者,通过专栏的学习可以熟练掌握python编程,同时为后续的数据分析,机器学习及深度学习的代码能力打下坚实的基础...本文已收录于Python基础系列专栏: Python基础系列教程 欢迎订阅,持续更新。...last) in ----> 1 1/0 ZeroDivisionError: division by zero 2、找不到可读文件...") except IndexError: print("索引超出界限") except KeyError: print("键不存在") 变量名不存在 万能异常 Exception (所有错误的老祖宗...try: with open("浪淘沙_北戴河.txt") as f: text = f.read() except FileNotFoundError: print("找不到该文件
一、字典的简介 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。...python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、元组。 ...字典(dictionary)是除列表意外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。...print(dic) #结果为:{'age': 29, 'name': 'fuyong'} 4 5 dic.pop('job') 6 print(dic) #此时以及没有job的key,就会报错 KeyError...KeyError: 'addr' ▷get(key)方法: 该方法是用指定索引的方法来查找其所对应的元素,如果找不到,不会报错,可以通过 dic.get(key,'返回值') 方法指定找不到key时候的返回值
测试题 0.在Python中,else语句能跟哪些语句进行搭配? a)if…else语句,“要么怎样。...suite with语句处理多个项目的时候,可以用逗号隔开写成一条语句 with A() as a,B() as b: suite 6.使用with语句改写以下代码,让Python...else: print('两个文件共有【%d】处不同:'%len(differ)) for each in differ: print('第 %d 行不一样'...else: print('两个文件共有【%d】处不同:'%len(differ)) for each in differ: print('第 %d 行不一样'...'请输入联系人姓名:') try: print(name + ':' + contacts[name]) except KeyError
丰富的else语句 python中else不仅可以与if搭配组成控制流,还可以与while或for搭配使用 要么怎样,要么不怎样 干完了能怎样,干不完就别想怎样 没有问题,那就干吧 举例:求素数 def...OSError as reason: print('出错啦:' + str(reason)) -------------------分割线,哈哈哈------------------------ 测试题 0.在python...with A() as a,B() as b: suite ------------------分割线,哈哈哈------------------------ 0.使用with语句改写以下代码,让python...else: print('两个文件共有【%d】处不同:' % len(differ)) for each in differ: print('第%d行不一样' % each...else: print('两个文件共有【%d】处不同:' % len(differ)) for each in differ: print('第%d行不一样' % each
有时候我们想在 yaml 文件中引用变量来读取 python 代码的设置值。...template 使用 template 是字符串模板,用于替换字符串中的变量,是 string 的一个类引用变量有 2 种格式 variable 使用 变量名 引用变量 {variable} 使用...{变量名} 大括号包起来 第一种 $variable from string import Template # 作者-上海悠悠 QQ交流群:717225969 # blog地址 https://www.cnblogs.com...'} print(tempTemplate.substitute(d)) 这段,$符号加在My的前面,我只想让它是一个普通的字符串,不想引用变量,就出现了报错说找不到这个key Traceback (most...\lib\string.py", line 123, in convert return str(mapping[named]) KeyError: 'My' Template 里面还有一个 safe_substitute
大家好,今天我们简单介绍下在学习Python时常见的一些错误和异常。 记得刚接触Python的时候,一条简单的语句在执行的时候却总能遇到报错。...在Python编程中有两种可区分的报错:语法错误 和 异常。...文件名和行号也会被输出,以便输入来自脚本文件时你能知道去哪检查。...错误消息的开头部分以堆栈回溯的形式显示发生异常的上下文:通常它会包含列出源代码行的堆栈回溯;但是,它将不会显示从标准输入读取的行。 ?...遇到报错不要慌,对于新手来说,常见的就是先检查基础语法对不对、标识符是不是用了中文,变量名的拼写是不是错了,变量名是不是没定义就调用了,缩进是不是没整对,函数方法是不是用错了,想引入的库是不是没有安装等等
比如统计单词出现频率 index= {} occurences = index.get(word,[]) occurences.append(location) index[word] = occurrences 这三行代码可以简写为一行...index = {} index.setdefault(word,[]).append(location) 虽然两者结果是一样的,但是三行代码的那种至少要经过两次键查询,而一行代码的只需要一次键查询。...上面方法还可以通过集成dict,覆盖里面的missing方法来实现,missing方法在getitem找不到键的时候被调用。...但是常用的不是继承dict而是继承collections.UserDict, UserDict是用100%python实现了一遍dict,而dict使用了很多捷径导致我们必须重写很多方法。...collections.UserDict): def __missing__(self, key): if isinstance(key, str): raise KeyError
领取专属 10元无门槛券
手把手带您无忧上云