自定义异常
你可以用 raise
语句来引发一个异常。异常/错误对象必须有一个名字,且它们应是 Error
或 Exception
类的子类。
下面是一个引发异常的例子:
class ShortInputException(Exception): '''自定义的异常类''' def __init__(self, length, atleast): self.length = length self.atleast = atleast def __str__(self): return '输入的长度是 %d, 长度至少应是 %d' % (self.length, self.atleast) def main(): try: s = input('请输入 --> ') if len(s) < 3: # raise 引发一个自定义的异常 raise ShortInputException(len(s), 3) except ShortInputException as result: print('ShortInputException:', result) else: print('没有异常发生.') main()
运行结果如下:
补充文件备份
制作文件的备份
输入文件的名字,然后程序自动完成对文件进行备份
参考代码
# 提示输入文件 file_name = input("请输入要拷贝的文件名字:") # 以读的方式打开文件 old_file = open(file_name, 'rb') # 分割文件名和后缀名 file_names =file_name.rsplit('.', maxsplit=1) # 组织新的文件名字 new_file_name = file_names[0] + '.bak.'+file_names[1] # 创建新文件 newFile = open(new_file_name, 'wb') # 把旧文件中的数据,一行一行的进行复制到新文件中 for lineContent in old_file.readlines(): newFile.write(lineContent) # 关闭文件 old_file.close() newFile.close()