当前位置: 首页 > 知识库问答 >
问题:

导入json时Transcrypt gives无法导入编解码器错误

汪甫
2023-03-14

我尝试使用transcrypt将python文件转换为JS,使用命令transcrypt-b-m-n hello.py。在我的python脚本中有一个对JSON的导入:

import json

# the MAIN meaty function!!!
def exec_script_str(script_str, raw_input_lst_json, options_json, finalizer_func):
  if options_json:
    options = json.loads(options_json)
...

将目标代码保存在:/home/sarwagya/desktop/hello/target/org.transcrypt.runtime.js将目标代码保存在:/home/sarwagya/desktop/hello/target/re.translate.js将目标代码保存在:/home/sarwagya/desktop/hello/target/warnings.js

编译时出错(上次文件出错):
文件'/home/sarwagya/desktop/hello/hello.py',第2186行,导入:
文件'/usr/lib/python3.8/json/init.py',第108行,导入:
文件'codecs',第44行,即:不能导入模块'codecs'

已中止

在此之前,我有一些进口似乎有效。因为Javascript中有一个JSON包,我以为transcript会支持这个。谢谢你的帮助。

共有1个答案

左丘昕
2023-03-14

完整的标准库还没有移植到Transcrypt,包括json库。在大多数情况下,您可以通过使用JavaScript等价库来支持您试图完成的任何事情来解决这个问题,并且可以直接从您的Python代码中调用这些库。但是Transcrypt不会自动为您进行这个库映射,因此您必须显式导入JavaScript库才能使用它。

由于Python字典是用Transcrypt转换成JavaScript对象的,所以您可以原样使用JSON数据。否则,您可以直接调用内置的json.parse()json.stringify()而无需导入。

 类似资料:
  • 我有一个django项目。在视图中。py文件,我尝试像这样导入我的模型(或来自MYAPP的任何东西): 它向我显示了一条警告“无法导入'MYAPP.~~'”。我的项目仍在正常运行,但VSCode报告了许多错误,所以我不知道这是不是真的。 我该如何修复它?谢谢^^。

  • 我试图从djangotoolbox.fields使用Listfield,但它给我一个错误说: 我做错了什么?

  • 我正在尝试运行Buildroot(2017.02)的scanpypi脚本-支持脚本,但是我得到了ImportError:cannotimport name get_importer。 回溯(最后一次调用):文件“/support/scripts/scanpypi”,第52行,导入setuptools文件“/usr/local/lib/python2.7/dist-packages/setuptoo

  • 我试图使用Keras序列,然而,我的jupyter笔记本充斥着错误,因为它无法在后端导入tenorflow(我想)。后来我发现,它不与Keras,但我不能做'导入tenstorflow作为tf'以及。 有什么建议吗?我正在使用python 3.5。6 tensorflow 1.12 我做了,pip的安装tenstorflow的安装。 ImportError回溯(最近一次调用上次)~\AppData

  • 问题内容: 我正在尝试从标准Oracle Java教程 运行此练习脚本。 这似乎是一个常见错误,我已经使用SO资源来尝试解决此问题。我已经尝试过清理项目,刷新项目,切换工作场所并切换回去,删除并重新添加了JRE7。 我不知道该怎么办 问题答案: 根据Javadoc, 因此,升级到Java 8,或尝试查找本教程的旧版本。 我是新来的。你怎么能知道你正在跑步?我正在使用Eclipse 要确定您当前的e

  • 这里是Java新手, null 我使用的是eclipse 3.7.2。 谢谢你的帮助