模块'sys'没有'_MEIPASS'成员。

7

我在按照这个教程学习如何将我的Python项目转换为可执行文件:https://dev.to/eshleron/how-to-convert-py-to-exe-step-by-step-guide-3cfi

我需要编写以下函数:

def resource_path(relative_path):
    """ Get absolute path to resource, works for dev and for PyInstaller """
    try:
        # PyInstaller creates a temp folder and stores path in _MEIPASS
        base_path = sys._MEIPASS
    except Exception:
        base_path = os.path.abspath(".")

    return os.path.join(base_path, relative_path)

然而,VSCode给我一个错误提示:模块'sys'没有'_MEIPASS'成员。我已经在网上搜索了很长时间,仍然不知道如何解决。
1个回答

5
如果您阅读了您复制的帖子,就会发现:

新版本的PyInstaller不再设置env变量... 现在将路径设置为sys._MEIPASS:

这是PyInstaller所设置的。这不是默认情况下在sys中的东西。当您尝试执行或只是在IDE中发出警告时,VSCode是否会抛出错误?可能是后者。

程序运行正常,我只是担心转换不起作用。谢谢你指出我的注意力分散! - GetTwoBirdsStonedAtOnce
没关系,这种事情时有发生。我在寻找一个选项来禁用那一行的检查。如果您在 VSCode 中使用的是 Pylint 语法检查器(默认是吗?),那么请检查哪个选项可以用于仅禁用该错误信息_仅针对那一行_. 参考此其他问题获取指导。 - aneroid

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接