Python Pickle 模块:加载列表的异常处理
Python Pickle Module: Exception Handling with loading lists
我是一名编程学生,正在做一个基于用户标准创建列表的简单项目
我在使用 Pickle 函数时遇到了这部分问题。如果用户输入不在目录中的列表,我该如何做到这一点,它会打印一条错误消息而不会使代码崩溃。
老师说这叫异常处理
我只是希望它不会崩溃,而是要求用户输入另一个名字。
这是我的代码。
import pickle
GetList = input("Enter the List to load: ")
with open(GetList, 'rb') as f:
mylist = pickle.load(f)
print(mylist)
print(J)
您可以简单地在 while 循环中嵌套一个 try catch,以在它不起作用时继续询问用户不同的文件名。
import pickle
while True:
try:
GetList = input("Enter the List to load: ")
with open(GetList, 'rb') as f:
mylist = pickle.load(f)
except (IOError, OSError, pickle.PickleError, pickle.UnpicklingError):
print("Not a valid file please try again")
else:
break
希望对您有所帮助。
我是一名编程学生,正在做一个基于用户标准创建列表的简单项目
我在使用 Pickle 函数时遇到了这部分问题。如果用户输入不在目录中的列表,我该如何做到这一点,它会打印一条错误消息而不会使代码崩溃。
老师说这叫异常处理
我只是希望它不会崩溃,而是要求用户输入另一个名字。
这是我的代码。
import pickle
GetList = input("Enter the List to load: ")
with open(GetList, 'rb') as f:
mylist = pickle.load(f)
print(mylist)
print(J)
您可以简单地在 while 循环中嵌套一个 try catch,以在它不起作用时继续询问用户不同的文件名。
import pickle
while True:
try:
GetList = input("Enter the List to load: ")
with open(GetList, 'rb') as f:
mylist = pickle.load(f)
except (IOError, OSError, pickle.PickleError, pickle.UnpicklingError):
print("Not a valid file please try again")
else:
break
希望对您有所帮助。