在玩list2
时,我注意到了一些奇怪的行为。
isalpha()
以上两个语句返回了我期望的结果。但是,现在在前面加上波浪号就没有意义了。
"a".isalpha()
>>True
"2".isalpha()
>> False
为什么会这样?我发现使用~"a".isalpha()
>> -2
~"2".isalpha()
>> -1
而不是not
返回了我期望的输出,但是对上述行为感兴趣。
~
答案 0 :(得分:4)
摘自bitwise operators上的python文档(重点是我):
~ x
:返回x的补数-通过将每个1切换为0以及将每个0切换为1得到的数字。这与-x-1相同。
从python True == 1
和False == 0
,~True == -1 - 1 == -2
和~False == -0 - 1 == -1
开始。
如发现的那样,要执行您想做的事(逻辑逆运算),您需要使用not
运算符。