8
“和”和“或”如何与非布尔值一起使用?
我正在尝试学习python,并遇到了一些不错的代码,虽然简短但并不完全有意义 上下文是: def fn(*args): return len(args) and max(args)-min(args) 我知道它在做什么,但是python为什么要这样做-即返回值而不是True / False? 10 and 7-2 返回5。同样,将和更改为或将导致功能更改。所以 10 or 7 - 2 将返回10。 这是合法/可靠的风格,还是有任何陷阱?