在 PHP 中,您使用 === 表示法来测试 TRUE 或 FALSE 与 1 或<代码>0代码>.
In PHP you use the === notation to test for TRUE or FALSE distinct from 1 or 0.
例如 if FALSE == 0 返回 TRUE,if FALSE === 0 返回 FALSE.因此,在以 0 为基数进行字符串搜索时,如果相关子字符串的位置正好在开头,您会得到 0,PHP 可以将其与 FALSE 区分开来.
For example if FALSE == 0 returns TRUE, if FALSE === 0 returns FALSE. So when doing string searches in base 0 if the position of the substring in question is right at the beginning you get 0 which PHP can distinguish from FALSE.
有没有办法在 Python 中做到这一点?
Is there a means of doing this in Python?
在 Python 中,
In Python,
is 运算符测试身份(False is False,0 is not False).
The is operator tests for identity (False is False, 0 is not False).
== 运算符,用于测试逻辑相等(因此 0 == False).
The == operator which tests for logical equality (and thus 0 == False).
从技术上讲,这些都不完全等同于 PHP 的 ===,后者比较逻辑相等和类型 - 在 Python 中,a == b 和 type(a) 是类型(b).
Technically neither of these is exactly equivalent to PHP's ===, which compares logical equality and type - in Python, that'd be a == b and type(a) is type(b).
is 和 == 之间的一些其他区别:
Some other differences between is and ==:
{} == {},但 {} 不是 {}(列表和其他可变类型也是如此)a = {},则 a 是一个(因为在这种情况下它是对同一个实例的引用){} == {}, but {} is not {} (and the same holds true for lists and other mutable types)a = {}, then a is a (because in this case it's a reference to the same instance)"a"*255 不是 "a"*255",但在大多数实现中,"a"*20 是 "a"*20,因为如何Python 处理字符串实习.但是,这种行为并不能保证,在这种情况下您可能不应该使用 is."a"*255 == "a"*255 并且几乎总是适合使用的比较."a"*255 is not "a"*255", but "a"*20 is "a"*20 in most implementations, due to how Python handles string interning. This behavior isn't guaranteed, though, and you probably shouldn't be using is in this case. "a"*255 == "a"*255 and is almost always the right comparison to use.12345 is 12345 但在大多数实现中 12345 不是 12345 + 1 - 1,类似地.您几乎总是希望在这些情况下使用相等.12345 is 12345 but 12345 is not 12345 + 1 - 1 in most implementations, similarly. You pretty much always want to use equality for these cases.这篇关于Python:假与 0的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
python:不同包下同名的两个模块和类python: Two modules and classes with the same name under different packages(python:不同包下同名的两个模块和类)
配置 Python 以使用站点包的其他位置Configuring Python to use additional locations for site-packages(配置 Python 以使用站点包的其他位置)
如何在不重复导入顶级名称的情况下构造python包How to structure python packages without repeating top level name for import(如何在不重复导入顶级名称的情况下构造python包)
在 OpenShift 上安装 python 包Install python packages on OpenShift(在 OpenShift 上安装 python 包)
如何刷新 sys.path?How to refresh sys.path?(如何刷新 sys.path?)
分发带有已编译动态共享库的 Python 包Distribute a Python package with a compiled dynamic shared library(分发带有已编译动态共享库的 Python 包)