网站开发的需求分析论文,营销型网站建设价格贵吗,免费的wordpress账号,它有什么特点需求
假设有多条交易信息#xff0c;写个raise抛出异常#xff0c;try…except 负责梳理出正常数据有哪些和非正常数据有哪些
解决
使用 raise 抛出异常并使用 try-except 梳理出正常数据和非正常数据#xff1a;
class InvalidTransactionException(Exception):def __i…需求
假设有多条交易信息写个raise抛出异常try…except 负责梳理出正常数据有哪些和非正常数据有哪些
解决
使用 raise 抛出异常并使用 try-except 梳理出正常数据和非正常数据
class InvalidTransactionException(Exception):def __init__(self, message):self.message messagedef process_transactions(transactions):normal_transactions []abnormal_transactions []for transaction in transactions:try:if transaction[amount] 0 or transaction[amount] 100000:raise InvalidTransactionException(交易金额不合法)elif len(transaction[description]) 100:raise InvalidTransactionException(交易描述过长)else:normal_transactions.append(transaction)except InvalidTransactionException as e:transaction[error_message] e.messageabnormal_transactions.append(transaction)return normal_transactions, abnormal_transactionstransactions [{id: 1, amount: 100, description: 购物},{id: 2, amount: 200000, description: 买车},{id: 3, amount: -50, description: 退款},{id: 4, amount: 500, description: 购物*100},{id: 5, amount: 1000, description: 旅游},
]normal_transactions, abnormal_transactions process_transactions(transactions)print(正常交易信息)
for transaction in normal_transactions:print(transaction)print(非正常交易信息)
for transaction in abnormal_transactions:print(transaction)在上述代码中我们定义了一个自定义异常类型 InvalidTransactionException用于表示交易信息不合法的异常。
在函数 process_transactions 中我们遍历交易信息列表并使用 if 语句检查每个交易信息。如果发现交易金额不合法或交易描述过长则使用 raise 抛出 InvalidTransactionException 异常否则将其视为正常交易信息。
在 except 块中我们捕获到 InvalidTransactionException 异常并将错误信息添加到交易信息字典中的 error_message 键中。同时将非正常交易信息添加到列表 abnormal_transactions 中。
最后函数返回正常交易信息列表 normal_transactions 和非正常交易信息列表 abnormal_transactions。
在主程序中我们定义了一个交易信息列表 transactions然后调用 process_transactions 函数处理信息。最后打印出正常交易信息和非正常交易信息。
更直观的例子来体现异常处理
使用 raise 抛出异常并使用 try-except 梳理出正常数据和非正常数据
class InvalidDataException(Exception):passdef process_data(data):normal_data []abnormal_data []for item in data:try:if item 0:raise InvalidDataException(数据小于零)else:normal_data.append(item)except InvalidDataException:abnormal_data.append(item)return normal_data, abnormal_datadata [1, 2, -3, 4, 5, -6, 7, 8, 9, -10]
normal_data, abnormal_data process_data(data)print(正常数据, normal_data)
print(非正常数据, abnormal_data)在上述代码中我们定义了一个自定义异常类型 InvalidDataException用于表示数据不合法的异常。
在函数 process_data 中我们遍历数据列表并使用 if 语句检查每个数据项。如果发现数据小于零则使用 raise 抛出 InvalidDataException 异常否则将其视为正常数据。
在 except 块中我们捕获到 InvalidDataException 异常并将非正常数据添加到列表 abnormal_data 中。
最后函数返回正常数据列表 normal_data 和非正常数据列表 abnormal_data。
在主程序中我们定义了一个数据列表 data然后调用 process_data 函数处理数据。最后打印出正常数据和非正常数据。