繁体   English   中英

如何将 JavaScript('对象')翻译成 Python?

[英]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 的等效约束是什么?

您可以使用type方法获取 python 中的变量类型:

if (type(f) is dict)

其实python中的js对象就是字典! 您可以从此链接查看更多详细信息。

在 JavaScript typeof f == 'object'中,当以下所有条件都不为真时为真:

  • f undefined :Python 中没有等效项
  • f是 boolean,数字或 bigint:在 Python 中,这是floatint实例。 由于boolint的子类,因此它被包括在内。
  • 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM