咨询qiskit调用__qiskit_version__触发AttributeError的问题
报错核心原因
该报错并非安装流程错误导致,本质是Qiskit版本迭代带来的接口变更:从0.45版本开始Qiskit逐步废弃模块顶层的__qiskit_version__属性,到1.0正式版本后该属性已被彻底移除,直接调用自然会触发AttributeError。目前通过pip默认安装的Qiskit均为1.x版本,运行旧教程中基于0.4x及更早版本写的qiskit.__qiskit_version__代码,必然触发该报错。
正确的版本查询方式
- 查询Qiskit核心包版本:直接调用
qiskit.__version__,这是模块长期保留的稳定属性,可直接返回核心包版本号 - 查询全生态组件版本:需先导入qiskit模块,再执行
qiskit.version.get_version_info(),返回结果为字典形式,涵盖Qiskit核心、Aer模拟器、可视化扩展等所有关联组件的版本号
当前Anaconda+本地Jupyter环境的专项排查步骤
- 核对Jupyter实际调用的解释器路径:在Notebook单元格运行
import sys; print(sys.executable),核对输出的Python路径是否和你用pip安装Qiskit的环境路径一致。如果路径不匹配,就是Notebook选择了错误的内核,需要在Notebook的内核选择菜单中切换到对应安装了Qiskit的环境内核 - 核对实际安装的Qiskit版本:激活安装了Qiskit的对应环境,运行
pip show qiskit,查看返回结果中的Version字段,确认安装的版本号。如果版本为1.0及以上,直接替换为上述正确的版本查询代码即可,无需重新安装 - 排查模块导入冲突:如果在本地Python环境、Anaconda base环境、自定义虚拟环境中都安装过Qiskit,容易出现多路径下的同名包重复导入问题。可在Notebook中运行
import qiskit; print(qiskit.__file__),核对输出的模块路径是否为你实际安装Qiskit的目录,如果路径指向非预期位置的qiskit文件夹,删除该冗余路径下的同名文件夹即可解决导入错乱问题
注意:网络上流传的大量Qiskit入门教程仍在使用
qiskit.__qiskit_version__的旧写法,这类教程基本是2023年之前的内容,适配的是0.2x~0.4x早期版本的Qiskit,直接照搬代码就会触发报错,不属于个人配置问题。
内容的提问来源于stack exchange,提问作者Long De
相关产品推荐
相关产品推荐

