首页 > 其他分享 >异常处理

异常处理

时间:2023-09-08 14:23:10浏览次数:30  
标签:Exception 错误 处理 except try num print 异常

异常处理

异常:报错

语法异常(错误都是SyntaxError)

出现SyntaxError: invalid syntax语法无效

if		#  SyntaxError
0 = 1	#  SyntaxError

逻辑异常(错误类型)

出现ZeroDivisionError: division by zero除零错误等

1/0						# ZeroDivisionError

dic = {}
print(dic['skldfj'])	# KeyError

try的使用

       			 	当try不显示错误,错在哪时:
print(1)
try: 		 	# 尝试
    print(3)	# 代码自上而下运行,上面的会运行
    1 / 0  		# 错误不影响其他的代码,报错马上终止try缩进里面的代码
    print(4)
except:			# 除此之外
    pass

# 结果、

					当try显示错误,错在哪时:	
print(1)
try:
    num = input('请输入一个值:')
    dic = {'0': 'a'}
    print(dic[num])
    print(3)
    1 / int(num)
    print(4)
except ZerDivisionError as e:		# try里面的代码出了什么错误,就带用什么错误捕捉;as是把错误赋值给 e
    print('e:', e)
except KeyError as e:				# 可以使用多个except进行捕捉
    print('e:', e)

最重要的语句 以后想捕捉错误语句就用这个

"Exception"

except Exception as e:	# Exception 可以捕捉任意异常,但是语法错误无法捕捉
    print('e:', e)
        				自己写的:
print(1)
try:
    num = input('请输入一个值:')
    lis = [1]
    print(lis[int(num)])
    print(3)
    1 / int(num)
    print(4)
except Exception as e:
    print('e:', e)
print(2)

了解部分;但不代表不重要

					# finally 的基本讲解
f = open('文件名.py', 'r')
data = f.read()
print(data)
del f		# 只删除f的引用
f.close()	# 即删除f的引用,又会命令操作系统关闭外存文件的占用
print(1)
try:
    1 / 1
 #或1 / 0
except Exception as e:
    print('e:', e)
finally:				# 最终的意思,无论报不报错都会打印,讲文件处理的时候会用到
    print(3)
print(2)

assert 断言,最早的时候没有pycharm,那这个就代表调试

a = 1
a += 2
assert a == 3		# 条件成立会跳过,条件错误会报AssertionError错误;断言错误
print(3 )

raise 主动抛错,没有用, 创建框架/创建语言有用 C/C++

raise KeyError('傻逼吧,主动抛错干嘛~')

标签:Exception,错误,处理,except,try,num,print,异常
From: https://www.cnblogs.com/hanyingshuo/p/17687465.html

相关文章

  • 服务器安装显卡后开机黑屏不显示处理方法
    已经安装好的服务器,假装显卡后,开机显示黑屏在服务器启动界面到按F11啥啥 F12啥啥那个界面 过去后,黑屏页面,马上按ESC  进入系统选项,以ubuntu为例,选择最上面的,然后按E  ,移动光标找到 ro quit ,找到后在ro quit 之间加东西如下ronouveau.modeset=0......
  • 服务器遭受攻击,CPU升高,流量升高,你一般如何处理?(几种攻击处理)
    服务器遭受攻击,CPU升高,流量升高,你一般如何处理?原创 六便士IT 六便士IT 2023-07-3011:00 发表于陕西收录于合集#Linux运维35个在什么情况下服务器会遭受攻击,从而导致CPU升高,流量升高1.DDoS(分布式拒绝服务攻击):这是一种常见的网络攻击方式,攻击者通过利用多个控制的机......
  • 深入浅出数字信号处理
    尼采“谁终将声震人间,必长久深自缄默;谁终将点燃闪电,必长久如云漂泊”资源与介绍深入浅出数字信号处理-pdf,epub,mobi下载-无名图书(book123.info)【不用付费解压、不用关注公众号即可直接下载pdf】该书评价9.7分:深入浅出数字信号处理(豆瓣)(douban.com)书籍介绍从......
  • .NET应用多语言-葡萄牙语软件,如何处理本地化,特别是数字的转换和计算
    在葡萄牙语软件中,数字本地化通常涉及小数点和千位分隔符的使用。在葡萄牙语中,小数点用“,”表示,而不是英语中使用的“.”。千位分隔符通常是一个空格或一个点。例如:62.5,其实代表的不是62.5而是625M 为了正确地处理数字本地化,可以使用.NET框架中提供的CultureInfo类。此类允许......
  • RTSP流媒体服务器EasyNVR视频平台以服务方式启动异常却无报错,该如何解决?
    EasyNVR是基于RTSP/Onvif协议的安防视频云服务平台,可实现设备接入、实时直播、录像、检索与回放、云存储、视频分发、级联等视频能力服务,可覆盖全终端平台(电脑、手机、平板等终端),在智慧工厂、智慧工地、智慧社区、智慧校园等场景中有大量落地应用。 有用户反馈,在项目现场启动Ea......
  • 有意思的bug:Input在谷歌浏览器下会出现异常显示问题!
    ❝这篇文章要感谢抖音:程序员小山与BUG!你说是bug吧也算是bug,不是bug吧也不是bug,不影响使用,触发情况也不多,但万一测试提了这个bug还是要解决的[doge],在此记录一下这个有意思的bug!❞Bug说明谷歌浏览器是前置条件还要加上input输入框但输入框要有2个附加条件:type是number以及css的te......
  • VueJS 处理表单组件上 api 调用的错误
    问题出在可组合项中对errors的处理上。在register函数中,你将errors重新赋值为空对象{},而应该将其赋值给errors.value来保持响应式。修改useAuth可组合项的代码如下:exportdefaultfunctionuseAuth(){leterrors=ref({});constregister=(request)=>{errors.val......
  • 国产化操作系统改造oracle proc依赖库文件缺失处理
    国产化操作系统改造oracleproc依赖库文件缺失处理1场景国产化操作系统升级改造过程中,RedHatEnterpriseLinuxServerrelease7.6(Maipo)在线升级迁移到BigCloudEnterpriseLinuxForEulerrelease21.10(LTS-SP2),oracle用户下执行proc报错:[oracle@superman~]$procpr......
  • 2023-09-07:用go语言编写。塔子哥最近在处理一些字符串相关的任务 他喜欢 R 字符,因为在
    2023-09-07:用go语言编写。塔子哥最近在处理一些字符串相关的任务他喜欢R字符,因为在某些任务中,这个字符通常表示“正确”的结果另一方面,他不喜欢B字符,因为在某些任务中,这个字符通常表示“错误”的结果为了解决他的任务,塔子哥定义了字符串的权值为字符串中R字符的出现次数例如,......
  • 2023-09-07:用go语言编写。塔子哥最近在处理一些字符串相关的任务 他喜欢 R 字符,因为在
    2023-09-07:用go语言编写。塔子哥最近在处理一些字符串相关的任务他喜欢R字符,因为在某些任务中,这个字符通常表示“正确”的结果另一方面,他不喜欢B字符,因为在某些任务中,这个字符通常表示“错误”的结果为了解决他的任务,塔子哥定义了字符串的权值为字符串中R字符的出现次数......