我想知道在命令上执行的确切代码是什么:

>>> from __future__ import braces
SyntaxError: not a chance

因此,由于python是开源的,因此我打开了C:\Python27\Lib\__future__.py并进行了查找。
令人惊讶的是,我在那里什么都没找到,无法处理导入braces模块。

因此,我的问题是,处理此问题的代码在哪里?当我运行该命令时会发生什么?

最佳答案

代码在future.c中:

future_check_features(PyFutureFeatures *ff, stmt_ty s, const char *filename)
...
  else if (strcmp(feature, "braces") == 0) {
    PyErr_SetString(PyExc_SyntaxError,
        "not a chance");
    PyErr_SyntaxLocation(filename, s->lineno);
    return 0;
  }

关于python - “from __future__ import braces”代码在哪里?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21125228/

10-12 20:25