2.假设某网站只允许用户上传jpg、png和jpeg格式的文件,要求编写代码,通过抛出自定义异常类对象并捕捉它实现用户上传头像格式检测的功能。注:让用户输入头像文件名模拟上传头像的操作。
时间: 2024-02-03 18:15:06 浏览: 32
以下是一个可能的实现:
```python
class InvalidImageFormatException(Exception):
def __init__(self, message):
self.message = message
def __str__(self):
return self.message
try:
filename = input("请输入头像文件名:")
extension = filename.split(".")[-1]
if extension not in ["jpg", "png", "jpeg"]:
raise InvalidImageFormatException("上传头像格式错误,请上传jpg、png或jpeg格式的文件。")
else:
print("头像上传成功!")
except InvalidImageFormatException as e:
print("头像上传失败,错误信息:", e)
```
在上面的代码中,我们定义了一个名为 `InvalidImageFormatException` 的自定义异常类,用于表示上传头像格式错误的情况。当用户输入头像文件名后,我们通过获取文件名中的扩展名(即后缀),并判断其是否为允许上传的格式。如果不是,则抛出一个 `InvalidImageFormatException` 异常对象,其中包含了错误信息。在代码中,我们使用 `try...except` 语句捕捉这个异常,并输出错误信息。如果没有抛出异常,则表示头像上传成功。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)