python设计一个包含异常处理的函数,用于处理用户输入的整数,要求用户输入一个有效的整数,若 输入无效,提示重新输入。 在文件读取的操作中加入异常处理,确保文件不存在或读取错误时能给出提示。
时间: 2024-10-23 08:07:47 浏览: 16
在Python中,你可以创建一个包含异常处理的函数,首先用于验证用户的输入,然后处理文件操作中的潜在错误。以下是两个函数的示例:
```python
def get_valid_integer(prompt):
while True:
try:
user_input = int(input(prompt))
return user_input
except ValueError:
print("输入不是有效的整数,请重新输入.")
def handle_file_operation(file_path, operation):
try:
with open(file_path, 'r') as file:
# 进行文件操作
contents = file.read()
except FileNotFoundError:
print(f"文件 '{file_path}' 不存在.")
except IOError:
print("发生读取文件的错误.")
else:
# 操作成功,执行后续逻辑
...
# 使用示例
integer = get_valid_integer("请输入一个整数: ")
handle_file_operation("example.txt", lambda f: f.readlines()) # 将lambda替换为实际需要的文件操作
```
在这个例子中,`get_valid_integer`函数会循环接收用户输入,直到得到一个可以转换为整数的值。如果输入无法转换为整数,它会抛出`ValueError`,然后捕获并提示用户重新输入。
对于文件操作,`handle_file_operation`函数尝试打开并读取文件,如果文件不存在(`FileNotFoundError`),或者在读取过程中遇到其他I/O错误(如`IOError`),都会捕获异常并给出相应的错误信息。如果文件能够正常读取,则执行后续的文件操作。记得将`lambda f: f.readlines()`替换为你实际的文件操作内容。
阅读全文