yangbao001 2021-07-10 21:44 采纳率: 100%
浏览 22
已采纳

无法查看python的导入的文件在哪里

在importlib模块中,有个__init__.py文件,这个文件下有个导入模块的代码如下:

import _frozen_importlib as _bootstrap

我找不到涉及__frozen_importli的代码在哪里,我尝试过在pycharm里按住Ctrl单击或者选中后按Ctrl+B都不好使,提示:connot find declaration to go to。我不知道这涉及到了什么知识。
局部完整代码如下:

import _imp  # Just the builtin component, NOT the full Python module
import sys

try:
    import _frozen_importlib as _bootstrap
except ImportError:
    from . import _bootstrap
    _bootstrap._setup(sys, _imp)
else:
    # importlib._bootstrap is the built-in import, ensure we don't create
    # a second copy of the module.
    _bootstrap.__name__ = 'importlib._bootstrap'
    _bootstrap.__package__ = 'importlib'
    try:
        _bootstrap.__file__ = __file__.replace('__init__.py', '_bootstrap.py')
    except NameError:
        # __file__ is not guaranteed to be defined, e.g. if this code gets
        # frozen by a tool like cx_Freeze.
        pass
    sys.modules['importlib._bootstrap'] = _bootstrap
  • 写回答

2条回答 默认 最新

  • blkq 2021-07-10 22:09
    关注

    这个意思是如果本地安装了_frozen_importlib,那么用这个做_bootstrap。
    如果没有的话,就走到except分支,用当前目录的_bootstrap。

    这个是为了兼容性。

    觉得有用,麻烦点个采纳,谢谢

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已采纳回答 7月11日
  • 创建了问题 7月10日

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?