use*_*752 2 python regex python-2.7
为什么
not re.match("c", "cat")
Run Code Online (Sandbox Code Playgroud)
返回 False,但是
re.match("c", "cat")
Run Code Online (Sandbox Code Playgroud)
不返回 True 而是返回对象在内存中的位置。我找不到让这个语句返回真的方法,但我知道它是真的,因为:
if re.match("c", "cat"):
print "Yes!"
Run Code Online (Sandbox Code Playgroud)
返回“是!”。
正如我所说,这没有实际意义,至少目前没有,但它确实让我感到困惑。
使用bool()要转换为布尔值(true / false):
bool(re.match("c", "cat")) == true
Run Code Online (Sandbox Code Playgroud)
当您re.match("c", "cat")在if语句中使用时,它会自动转换为布尔值true,这就是为什么它会return Yes!
Usingnot将自动将其转换为布尔值,然后将其反转,因此:
not re.match("c", "cat") == false
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4714 次 |
| 最近记录: |