[英]python statement with `or` inside square brackets
這是我從 setup.py python 文件粘貼的代碼片段。 我是 python 新手,不理解這個build_args
變量。 有人可以給我一些解釋嗎?
build_args = [NINJA or MAKE]
# control the number of concurrent jobs
if self.jobs is not None:
build_args.extend(['-j', str(self.jobs)])
subprocess.check_call(build_args)
用:
build_args = [NINJA or MAKE]
NINJA
是“真實的”,那么build_args = [NINJA]
NINJA
是“falsy”,則build_args = [MAKE]
注意:Python 的 Truthy 和 Falsy - 廣義布爾值
在 python 中,除了布爾值本身之外,還有其他等效於True
和False
的值:
在布爾運算的上下文中,以及當控制流語句使用表達式時,以下值被解釋為 false:
False
None
- 所有類型的數字零
- 空字符串和容器(包括字符串、元組、列表、字典、集合和凍結集)
所有其他值都被解釋為真。
or
真值表:
X | 是 | x or y |
---|---|---|
真的 | 真的 | X |
真的 | 錯誤的 | X |
錯誤的 | 真的 | 是 |
錯誤的 | 錯誤的 | 是 |
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.