首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Spyder中未定义Python错误名称'runfile‘

在Spyder中未定义Python错误名称'runfile‘
EN

Stack Overflow用户
提问于 2016-01-18 11:41:13
回答 3查看 20.2K关注 0票数 6

我收到错误:在Spyder (Python 2.7)中没有定义名称'runfile‘,尽管我更改了保存脚本的工作目录。我只是在命令行中运行代码,但我想在Spyder中运行它。我该怎么解决它呢?

谢谢。

EN

回答 3

Stack Overflow用户

发布于 2016-07-08 04:29:16

可能有多种因素导致了这种情况。我遇到了这个问题,导致我这个问题的原因是sitecustomize的问题。在搜索了一个解决方案(在这里搜索的详细信息:Spyder 'runfile' is not defined)之后,我基本上需要进入命令提示符(在Windows中是cmd)并键入:

代码语言:javascript
运行
复制
spyder --reset
spyder --default
票数 5
EN

Stack Overflow用户

发布于 2016-09-22 02:09:21

问题的原因是spyder (在我的例子中是3.0.0b7)无法加载以下文件(路径是OSX路径)

/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/spyder/widgets/externalshell/sitecustomize.py

因此,当上面的文件加载失败时,sitecustomize.py中的以下函数"runfile“也无法加载。

代码语言:javascript
运行
复制
def runfile(filename, args=None, wdir=None, namespace=None, post_mortem=False):
    """
    Run filename
    args: command line arguments (string)
    wdir: working directory
    post_mortem: boolean, whether to enter post-mortem mode on error
    """
    try:
        filename = filename.decode('utf-8')
    except (UnicodeError, TypeError, AttributeError):
    # UnicodeError, TypeError --> eventually raised in Python 2
    # AttributeError --> systematically raised in Python 3
    .
    .
    .

因此,python没有找到在spyder IDE中运行.py文件所需的函数runfile,并输出"NameError: name 'runfile‘is not defined"

我修复方法是将路径添加到PYTHONPATH管理器中,如下所示

我的spyder安装是一个独立的安装,不是Anaconda包的一部分,因为我不想在安装2.x和3.x python的基础上再安装一个python。也许,这就是为什么spyder --reset和spyder --default将它们设置回默认值对我不起作用。

票数 0
EN

Stack Overflow用户

发布于 2017-07-28 00:23:37

在我的Windows机器上的Anaconda环境中,我必须运行

conda update setuptools

从命令行,按照https://github.com/spyder-ide/spyder/issues/2812。这似乎帮我把事情搞清楚了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34846953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档