[英]How to translate JavaScript ('object') into Python?
我正在将一些 JavaScript 代码转换为 Python。
JavaScript 中有一个 if 条件,类似于: if (typeof f === 'object')
,如果此条件评估为真,则执行一系列操作。
在这种情况下, f
将类似于: f = { 'fields': ["user_id", "date_started", "date_ended"] }
在这种情况下, f
是一个dict
,但可能并非总是如此。
我知道在 JavaScript 中,几乎所有东西都被认为是 object。 object
中 object 的等效约束是什么?
在 JavaScript typeof f == 'object'
中,当以下所有条件都不为真时为真:
f
undefined
:Python 中没有等效项f
是 boolean,数字或 bigint:在 Python 中,这是float
的int
实例。 由于bool
是int
的子类,因此它被包括在内。f
是一个字符串:在 Python 这是str
的一个实例f
是符号:Python 中没有等价物f
是 function:在 Python 中,您可以使用callable
来检测它警告: typeof null == 'object'
为真,所以在 Python 中None
应该通过等效测试。
所以这将我们带到 Python 中的以下测试:
if not (callable(f) or isinstance(f, (int, float, str))):
# it is an "object"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.