我只想排除诱变剂引发的异常。然而,有很多可能的例外。有没有什么方法可以通配符(通过regexp/etc)except处理的异常?另一种选择就是无聊。。。在
mutagen.apev2.APEBadItemError
mutagen.apev2.APENoHeaderError
mutagen.apev2.KeyError
mutagen.apev2.ValueError
mutagen.easyid3.EasyID3KeyError
mutagen.easyid3.KeyError
mutagen.easyid3.ValueError
mutagen.flac.FLACNoHeaderError
mutagen.flac.FLACVorbisError
mutagen.flac.TypeError
mutagen.id3.EnvironmentError
mutagen.id3.EOFError
mutagen.id3.ID3BadCompressedData
mutagen.id3.ID3BadUnsynchData
以此类推:p
这也很难看,但在需要截获大量、非常异构的异常集的情况下,类似这样的方法可能是一个可行的选择。至少它在其他地方排除了一长串例外情况。在
显然,如果可能的话,这是要避免的;Bryan Moyles的解决方案在您的特定情况下可能更可取。不过,我想我应该提一下。在
还有一种不那么复杂的方法,尽管这仍然有点痛苦,但是每个模块都实现了一个“错误”,所有相关错误都是从这个错误中扩展出来的。在
相关问题 更多 >
编程相关推荐