python(unsubscriptable object异常),是设置错误造成的,解决方法如下;
十年的渭城网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整渭城建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“渭城网站设计”,“渭城网站推广”以来,每个客户项目都认真落实执行。
1、首先创建一个py文件,输入“for i in range(10):y=1if i==5:y=0i=i/yprint(i)”代码,如下图所示。
2、运行py文件,可以看到程序运行到i等于5的时候出现了分母为0的异常,程序中断不继续执行,如下图所示。
3、这时将可能出现异常的代码添加try...except...语句,代码如下图。
4、运行py文件,可以看到python已经跳过异常继续执行了,如下图所示。
5、如果是函数调用可能出现异常的话,可以在函数外面使用try...except...语句,这样程序出现异常了,可以继续执行。
下面有两种解决方法,第一种是类似if..else..;另外一种是使用语句来实现继续执行;
方法一:使用try...except...语句,类似于if...else...,可以跳过异常继续执行程序,这是Python的优势
用法如下:
方法二:使用语句来继续执行;
拓展资料
异常处理特点:
1.在应用程序遇到异常情况(如被零除情况或内存不足警告)时,就会产生异常。
2.发生异常时,控制流立即跳转到关联的异常处理程序(如果存在)。
3.如果给定异常没有异常处理程序,则程序将停止执行,并显示一条错误信息。
4.可能导致异常的操作通过 try 关键字来执行。
5.异常处理程序是在异常发生时执行的代码块。在 C# 中,catch 关键字用于定义异常处理程序。
6.程序可以使用 throw 关键字显式地引发异常。
7.异常对象包含有关错误的详细信息,其中包括调用堆栈的状态以及有关错误的文本说明。
8.即使引发了异常,finally 块中的代码也会执行,从而使程序可以释放资源。
参考资料来源:百度百科:异常处理
目前来看你的异常不是有try里面的语句引起的,是一个postName = ××× 的语句,try,except方法是可以跳过异常的,希望你能把程序给的更详细些,不然postName的语句问题出在哪我也不清楚
不管是什么程序,python使用tryexcept语句来处理异常。tryexcept语句不仅仅是要让其捕获异常更重要的是让其忽略异常,因为爬虫中的绝大多数异常可能重新请求就不存在,因此,发现异常的时候将其任务队列进行修复其实是个最省力的好办法。
#计算机# #程序员# #python# #代码# #IT#
程序在运行的时候,如果python解释器遇到 不是语法错误 时,会停止程序的执行,并且抛出一些错误的信息进行提示,这就是异常。
方式try-except语句捕获 所有发生的异常 。但这不是一个很好的方式,我们不能通过该程序识别出具体的异常信息。因为它捕获所有的异常,常用于函数最外层进行捕捉未知异常。
1)情况1
2)情况2
3)情况3
当在try块中抛出一个异常,立即执行finally块代码。
finally块中的所有语句执行后,异常被再次触发,并执行except块代码。
在不确定异常是哪个的情况下,常用的except的异常有: Exception、BaseException 。
关注我,坚持每日积累一个技巧, 长期坚持 ,我们将会不断进步。
8.3. 异常处理
通过编程处理选择的异常是可行的。看一下下面的例子:它会一直要求用户输入,直到输入一个合法的整数为止,但允许用户中断这个程序(使用 Control-C 或系统支持的任何方法)。注意:用户产生的中断会引发一个 KeyboardInterrupt 异常。
while True:
... try:
... x = int(input("Please enter a number: "))
... break
... except ValueError:
... print("Oops! That was no valid number. Try again...")
...
try 语句按如下方式工作。
首先,执行 try 子句 (在 try 和 except 关键字之间的部分)。
如果没有异常发生, except 子句 在 try 语句执行完毕后就被忽略了。
如果在 try 子句执行过程中发生了异常,那么该子句其余的部分就会被忽略。
如果异常匹配于 except 关键字后面指定的异常类型,就执行对应的except子句。然后继续执行 try 语句之后的代码。
如果发生了一个异常,在 except 子句中没有与之匹配的分支,它就会传递到上一级 try 语句中。
如果最终仍找不到对应的处理语句,它就成为一个 未处理异常,终止程序运行,显示提示信息。
一个 try 语句可能包含多个 except 子句,分别指定处理不同的异常。至多只会有一个分支被执行。异常处理程序只会处理对应的 try 子句中发生的异常,在同一个 try 语句中,其他子句中发生的异常则不做处理。一个 except 子句可以在括号中列出多个异常的名字,例如:
... except (RuntimeError, TypeError, NameError):
... pass
最后一个 except 子句可以省略异常名称,以作为通配符使用。你需要慎用此法,因为它会轻易隐藏一个实际的程序错误!可以使用这种方法打印一条错误信息,然后重新抛出异常(允许调用者处理这个异常):