操作系统:虚拟机上的 Windows 10 Enterprise 所有安装均仅为用户(我自己)完成。
我之前安装过 Anaconda 3 和 Anaconda 2 版本(不确定是哪一个)。由于一些问题,我不得不重新安装 Anaconda 2 (Anaconda2-4.0.0-Windows-x86_64.exe)。安装后,安装可以调用 python。但是,安装无法使用,因为 import pandas 会由于 ast 模块节点遍历失败而失败(抱歉没有更好地解释这一点 - 下面是类似错误的片段)。
在此失败后,我卸载了 Anaconda2,并安装了 Anaconda3 (Anaconda3-2024.02-1-Windows-x86_64.exe)。直到使用 python 安装位置更新环境 PATH 后,安装才起作用。
调用 python 解释器工作正常。但是,从命令提示符调用 conda 或导入 pandas 失败并出现错误:
(snip full traceback error)
File "C:\Users\idsid\AppData\Local\anaconda3\Lib\inspect.py", line 1024, in <module>
class _ClassFinder(ast.NodeVisitor):
^^^^^^^^^^^^^^^
AttributeError: module 'ast' has no attribute 'NodeVisitor'
一些研究(ast 和工作目录)表明 ast.NodeVisitior 可能会由于路径中包含工作目录而失败。但是,如果 Anaconda3 路径不在 PATH 变量中,则无法从命令行调用 conda。
我的期望是了解如何解决问题并使用 Anaconda / conda。
不用说,任何帮助将不胜感激。
睡个好觉给了我答案。在上面的步骤中,我还添加了指向自定义脚本路径的 PYTHONPATH 变量。这很可能导致该路径中也有 ast.py,导致 Anaconda 安装和新路径之间发生冲突。删除它们解决了问题!