我试图使用命令transcrypt -b -m -n hello.py使用transcrypt将python文件转换为JS。我在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)
...我收到以下错误消息:
Transcrypt (TM) Python到JavaScript小型Sane子集Transpiler版本3.7.16版权(C) Geatec工程。许可证:Apache2.0 将目标代码保存在: /home/sarwagya/Desktop/Hello/target/org.transcrypt.runtime.js保存目标代码中: /home/sarwagya/Desktop/Hello/target/re.translate.js保存目标代码中: /home/sarwagya/Desktop/Hello/target/re.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包,所以我认为转录本会支持这一点。谢谢你的帮助。
发布于 2020-08-10 19:24:48
完整的标准库还没有移植到Transcrypt,包括json库。在大多数情况下,您可以通过使用JavaScript等效库来支持您想要完成的任何任务来解决这个问题,并且可以从您的Python代码中直接调用它们。但是Transcrypt不会自动为您执行这个库映射,因此您必须显式导入JavaScript库才能使用它。
由于使用Transcrypt的Python字典被转换为JavaScript对象。,您可能只需按原样使用JSON数据。否则,您可以直接调用内置的JSON.parse()和JSON.stringify(),而不需要导入。
https://stackoverflow.com/questions/63339044
复制相似问题