编程语言
首页 > 编程语言> > 在python中命名不是唯一结果错误吗?

在python中命名不是唯一结果错误吗?

作者:互联网

也许这是一个非常规的问题,但我想听听它的答案.由于英语不是我的母语,所以我想请第二意见.

我想在python中引发一个错误,想知道如何命名它.

class AmbiguousResultError(Exception): pass
class NoResultFoundError(Exception): pass

def getUrlFor(mystring):
    list_of_urls = []
    # parse url object for all matching urls for the given string
    # and add them to list_of_urls
    if len(url) > 1:
        raise AmbiguousResultError("More then one url matches for {0}".format(mystring))
    elif not url:
        raise NoResultFoundError("There was no matching url for {0}".format(mystring))
    else:
        return list_of_urls[0]

我想知道的是第一个加薪,即如何精确地命名.我想到了

> NoUniqueResultFoundError
> AmbiguousResultError
> UncertainResultError

但是他们都不满意我,我也不知道我是否用这个名字打了钉子.对其他人也应该显而易见.为此必须有一个特定的表达.哪一个.我曾想在english.stackexchange.com上问这个问题,但我认为程序员和语言学家相比还有另一种想法.

解决方法:

我更喜欢AmbiguousStringError而不是AmbiguousResultError.毕竟,具有多种含义的不是结果,而是用户提供的字符串.

或可能是MultipleResultsFoundError.我认为您对NoUniqueResultFoundError的建议虽然一样好.如果您像其余部分一样对代码的其余部分有充分的了解,那么其他开发人员将不会在调试它时遇到问题.

标签:exception,naming-conventions,python
来源: https://codeday.me/bug/20191208/2090384.html