python中自定义错误_在python中捕获自定义错误

这里是一个快速的回顾。是的,您问题中的错误看起来确实可能与导入问题有关(根据我的评论;)。在from pprint import pprint as pp

class IPDefinedError(Exception):

"""Mock IPDefinedError implementation

"""

pass

class IPWhois(object):

"""Mock IPWhois implementation

"""

def __init__(self, ip_address):

if ip_address == "127.0.0.1":

raise IPDefinedError(

"IPv4 address '127.0.0.1' is already defined as 'Private-Use Networks' via 'RFC 1918'.")

self._ip_address = ip_address

def lookup(self):

return "RESULT"

def lookup(ip_address):

""" calculates IPWhois lookup result or None if unsuccessful

:param ip_address:

:return: IPWhois lookup result or None if unsuccessful

"""

result = None

try:

obj = IPWhois(ip_address)

result = obj.lookup()

except IPDefinedError as e:

msg = str(e)

print("Error received: {}".format(msg)) # do something with msg

return result

if __name__ == '__main__':

results = map(lookup, ["192.168.1.1", "127.0.0.1"])

pp(list(results)) # ['RESULT', None]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值