【发布时间】:2016-01-23 08:05:09
【问题描述】:
我正在将 CPython 移植到 Emscripten,并且构建成功。但是,当我尝试通过 Node.js 运行 python.asm.js 时,Py_InitializeEx(0) 调用中出现了一个非常奇怪的错误:
Traceback (most recent call last):
File "/lib/python2.7/site.py", line 62, in <module>
import os
File "/lib/python2.7/os.py", line 44, in <module>
from posix import *
TypeError: 'NotImplementedType' object does not support indexing
错误是从Objects/abstract.c 中的PySequence_GetItem 生成的,但我不明白执行是如何到达那里的。如果我在导致错误的行之前执行import posix,则import posix 语句成功完成,我可以调用posix 模块中的函数。因此,该错误与from <module> import * 行有关。 PySequence_GetItem 与 from <module> import * 语句有什么关系,错误的原因是什么?
如果你想重现问题,我released the code on GitHub
【问题讨论】:
标签: python cpython emscripten