Exception类
第1关:Python异常类与自定义异常
编程要求
按要求自定义MyError异常类,使得当MyError异常发生时,执行评测代码能够输出如下信息。
测试输入:
4
预期输出:
这是我定义的第4个异常
评测说明
评测代码结构大致如下
try:
raise MyError(4)
except MyError as e:
print(e)
解题思路
因为构造函数有数字,所以__init__
在写的时候记得带上数字。
因为有print
,所以注意修改字符串化函数__str__
# -*- coding: utf-8 -*-
class MyError(Exception):
#********begin*********#
def __init__(self,val):
self.val = val
def __str__(self):
return "这是我定义的第%d个异常"%(self.val)
#******** end*********#
- 字符串格式化的多种方式
第2关:Python中的异常处理结构
编程要求
按照要求补全右侧代码。使得实现以下功能:
当测试输入的字符串长度大于3时抛出MyError异常,并输出长度过长,否则输出长度合适。
并且不论是否抛出异常,执行完成后都要输出执行完毕。
评测说明
测试输入:
abc
预期输出:
长度合适
执行完毕
解题思路
class MyError(Exception):
def __init__(self):
pass
def __str__(self):
return '长度过长,大于3'
def TestLength(x):
x=len(x)
#*********begin*********#
try:
if x > 3:
raise MyError()
# raise Myerror()
# name 'Myerror' is not defined
except Exception as e:
print(e)
else:
print("长度合适")
finally:
print("执行完毕")
#********* end*********#
- 注意类的名字不要拼错了
try…except…finally…
第1关:学习-Python异常处理之try…except…finally…
编程要求
仔细阅读右侧编辑区内给出的代码框架及注释,按照提示在 Begin-End 之间补充该程序代码。如果发生了异常,打印异常信息,打印格式如下(冒号为中文冒号):
错误信息为:xxxxxxx
测试说明
平台将使用测试集运行你编写的程序代码,若全部的运行结果正确,则通关。
可在右侧 “测试结果”区查看具体的测试集详情。
测试输入:
f.read()
预期输出:
文件已关闭
测试输入:
f.write()
预期输出:
错误信息为write() takes exactly one argument (0 given)
文件已关闭
解题思路
# 请在下面的 Begin-End 之间按照注释中给出的提示编写正确的代码
########## Begin ##########
f = open("src/step1/test.txt","r")
try:
eval(input()) # eval用来执行一个字符串命令,并返回一个值
# 无except :
# Traceback (most recent call last):
# File "src/step1/err