相关疑难解决方法(0)

Python的逻辑运算符AND

我对Python中的逻辑运算符得到的结果有点困惑.我是一名初学者,正在学习使用几本书,但他们并没有像我想的那样详细解释.

这是我自己的代码:

five = 5
two = 2

print five and two

>> 2
Run Code Online (Sandbox Code Playgroud)

它似乎只是输出两个变量.

five = 5
two = 2
zero = 0

print five and two and zero
Run Code Online (Sandbox Code Playgroud)

所以,我添加了另一个变量整数.然后我打印并得到以下输出:

>> 0
Run Code Online (Sandbox Code Playgroud)

Python在后台发生了什么?为什么输出不是7或5,2.

python operator-keyword

36
推荐指数
2
解决办法
8万
查看次数

使用布尔表达式分配字符串

我试图从别人的项目中理解这段代码.如果您想要上下文,请访问:https://github.com/newsapps/beeswithmachineguns/blob/master/beeswithmachineguns/bees.py#L501

IS_PY2只是一个布尔变量,True如果Python主要版本是2.我知道非空字符串是True,但由于某种原因我不理解openmode被指定'w'或者'wt'而不是TrueFalse.

openmode = IS_PY2 and 'w' or 'wt'
openkwargs = IS_PY2 and {} or {'encoding': 'utf-8', 'newline': ''}
Run Code Online (Sandbox Code Playgroud)

有人能解释一下结果吗?

python python-2.7

6
推荐指数
2
解决办法
942
查看次数

标签 统计

python ×2

operator-keyword ×1

python-2.7 ×1