首先,代码:
>>> False or 'hello'
'hello'
这个令人惊讶的行为允许您检查x != None,并在一行中检查x值:
>>> x = 10 if randint(0,2)==1 else None
>>> (x or 0) > 0
depend on x value...
解释:"or“函数如下:()”如果x为false,则y,否则x“
据我所知,没有哪门语言能让你这么做。那么,为什么是Python呢?
我经常遇到类似这样的场景:
对层次结构进行建模的容器业务类。
参与此层次结构并由上述类聚合的业务类。
让我给你举个例子。
Map有国家/地区。现在Map应该知道每个Country在哪里,因为除了包含所有国家之外,它的主要责任是知道每个国家的位置和邻近程度。从这个角度来看,像isNeighbour(Country A, Country B)这样的功能似乎是对Map的正确添加。然而,每个国家也应该提供一种方法来了解一个国家是否在附近。说spain.isNeighbour(italy)。这确实很有用。现在,如果我不想重复功能和响应性,我应该采取什么方法?
我目前正在做的例子是为我的大学做的,每门课程