【Python错误和异常小结】教程文章相关的互联网学习教程文章

Python之异常

5.异常 标准异常总结:AssertionError 断言语句(assert)失败AttributeError 尝试访问未知的对象属性EOFError 用户输入文件末尾标志EOF(Ctrl+d)FloatingPointError 浮点计算错误GeneratorExit generator.close() 方法被调用的时候ImportError 导入模块失败的时候IndexError 索引超出序列的范围KeyError 字典中查找一个不存在的关键字KeyboardInterrupt 用户输入中断键(Ctrl+c)MemoryError 内存溢出(可通过删除对象释放内存)...

python中的安全解码(‘?’符号而不是异常)【代码】

我有代码:encoding = guess_encoding() text = unicode(text, encoding)当文本中出现错误符号时会引发UnicodeDecode异常.我怎样才能默默地跳过用“?”替换错误符号的异常?解决方法:尝试text = unicode(text, encoding, "replace")从documentation:‘replace’ causes the official Unicode replacement character, U+FFFD, to be used to replace input characters which cannot be decoded.如果你想用“?”而不是官方的U...

python – 如何为一个“try”场景编写多个异常?【代码】

是否有更好的方法来编写这些异常而不是将一个异常放入另一个异常?在这种情况下,它工作正常,但如果我需要添加更多的异常,事情可能会变得非常混乱.print('I will divide two numbers for you: ') while True:first_number= input('Enter first number: ')second_number= input('Enter second number: ')try:int(first_number)int(second_number)except ValueError:print('Please put it in numbers')else:try:answer = int(first_nu...

python:验证条件和引发异常的最佳方法【代码】

嗨我必须验证一个向量是否包含全0或1,如果没有引发异常:def assert_all_zero_or_one(vector):if set(vector)=={0}: return 0if set(vector)=={1}: return 1raise TypeError有了这个优点assert_all_zero_or_one([1,1,1]) # return 1 assert_all_zero_or_one([0,0]) # return 0 assert_all_zero_or_one([1,0,1]) # raise TypeError我不喜欢这个解决方案..用python有一个最好的方法吗?解决方法: def allOneOf(items, ids):first = i...

实现python异常【代码】

我在程序中实现异常系统时遇到一些问题.我找到了以下代码,我试图用于我的程序:class InvalidProgramStateException(Exception):def __init__(self, expr, msg):self.expr = exprself.msg = msg我认为msg必须是要显示的字符串消息,但是当我想要引发此异常时如何填写“expr”?我必须手工编写吗?raise InvalidProgramStateException(what_here?, "there was an error")解决方法:您的自定义异常实际上根本不需要参数.如果您没有任何...

如何在python中测试if语句中的异常?【代码】

我想写一个函数来报告另一个函数的不同结果这些结果中有一些例外,但我无法将它们转换为if语句 例如:if f(x) raise a ValueError, then my function has to return a string‘Value’ if f(x) raise a TypeError, then my function has to return astring ‘Type但我不知道如何在Python中这样做.有人可以帮我吗. 我的代码是这样的: – def reporter(f,x): if f(x) is ValueError():return 'Value'elif f(x) is E2OddException(...

Python 操作excel常见异常【图】

一、使用xlrd模块读取excel: 1.报错:IndexError: list index out of range,如下图解决方法:reading_sheet.cell(1,0).value中cell(1,0)超出了数组范围,将范围取在usedRange之内即可。 2.报错:ModuleNotFoundError: No module named xlrd,如下图原因:a.因为没有此安装包,pip install 所需模块即可b.检查有此模块。可以找到所需模块的文件(此处是xlrd),放到当前工程文件路径的venv\Lib\site-packages目录下;或者在pychar...

python学习之异常处理【代码】

异常处理 一、错误的分类 语法错误:因语法没有通过python解释器于法检测 逻辑错误:有时不能避免 什么是异常 异常就是python程序运行时因发生错误而终止。在python的异常报错信息中包含:错误信息追踪信息;错误类型;错误值 异常种类 常见异常 AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x IOError 输入/输出异常;基本上是无法打开文件 ImportError 无法引入模块或包;基本上是路径问题或名称错误 ...

Python:使用异常进行迭代(初学者)【代码】

我只是想知道为什么这不起作用(我试图从一本书中给小鸭子起名:Jack,Kack,Lack,Mack,Nack,Ouack,Pack,Quack)注意:Quack和Ouack有一个Uprefixes = 'JKLMNOPQ' suffix = 'ack'for letter in prefixes:if letter != 'O' or 'Q': #I know this doesn't work, need to know alternativeprint letter + suffixelse:print letter + 'u' + suffix解决方法:你可能是这个意思:if letter != 'O' or letter != 'Q':原始陈述的结果,if le...

在Python中打印异常,而不是提高它们【代码】

我想捕获一个Python异常并打印它而不是重新提升它.例如:def f(x):try:return 1/xexcept:print <exception_that_was_raised> 这应该做:>>> f(0) 'ZeroDivisionError'没有例外被提出. 有没有办法做到这一点,除了在巨大的try-except-except …… except子句中列出每个可能的异常?解决方法:使用异常的消息属性或e .__ class __.__ name__如果你想要Base异常类的名称,即你的案例中的ZeroDivisionError’In [30]: def f(x):try:retu...

python – 使用列表推导和异常?【代码】

好吧,假设我有一个列表,我想检查该列表是否存在于另一个列表中.我这样做可以做到这一点:all(value in some_map for value in required_values)哪个工作正常,但是假设我想在缺少必需值时引发异常,并且缺少值.我怎么能用列表理解呢? 我或多或少好奇,所有的迹象似乎都指向不. 编辑Argh我的意思是:for value in required_values:if value not in some_map:raise somecustomException(value)看看那些我无法看到我如何找到错误发生的值...

python面向对象之类的成员及异常处理【代码】

1.面向对象之:类的成员类的结构细分 # 类的结构分为属性和方法两大类,其中又可以细分为下面这几种 class A:company_name = '老男孩教育' # 静态变量(静态字段)__iphone = '1353333xxxx' # 私有静态变量(私有静态字段)def __init__(self,name,age): # 特殊方法self.name = name # 对象属性(普通字段)self.__age = age # 私有对象属性(私有普通字段)def func1(self): # 普通方法passdef __func(self): # 私有方法print(666)@cla...

为什么Python使用异常来管理迭代器,为什么不使用其他语言?【代码】

在Java中,迭代器有一个hasNext()方法(如果我没记错的话 – 自从我用Java编程以来已经很长时间了,所以细节可能会关闭).当您单步执行迭代器时,查询hasNext()以查看是否应该停止. 在Python中,没有hasNext(),并且当迭代器想要发出应该停止的信号时,它会引发StopIteration异常.为什么不同? 我可以想象,不要求hasNext()为实现迭代器的人减少工作量;在这种情况下,为什么Java和其他语言使用它?它是一种哲学上的差异,还是因为某些原因在Py...

python – 使用Flask测试异常返回代码【代码】

我有以下代码块class APITests(unittest.TestCase):def setUp(self):app.config['TESTING'] = Trueself.app = app.test_client()app.config['SECRET_KEY'] = 'kjhk'def test_exn(self, query):query.all.side_effect = ValueError('test')rv = self.app.get('/exn/')assert rv.status_code == 400我想检查self.app.get(‘/ exn /)的返回码.但是,我注意到query.all()将异常传播到测试用例,而不是捕获它并返回错误代码. 在Flask中抛出...

Python中的文件与异常【代码】【图】

文件和异常 在实际开发中,常常需要对程序中的数据进行持久化操作,而实现数据持久化最直接简单的方式就是将数据保存到文件中。说到“文件”这个词,可能需要先科普一下关于文件系统的知识,对于这个概念,维基百科上给出了很好的诠释,这里不再浪费笔墨。 在Python中实现文件的读写操作其实非常简单,通过Python内置的open函数,我们可以指定文件名、操作模式、编码信息等来获得操作文件的对象,接下来就可以对文件进行读写操作了...

错误 - 相关标签