-1

我正在尝试学习量子计算机上的编程。我已经在 VS Code 中安装了 qiskit(VS Code 市场中提供了所有 qiskit 扩展)、python 编译器(来自 Vs Code 市场“Python”和“Python for VSCode”)。我已经设置了我的 qikit API 以便正常工作

当我运行示例时,我得到错误:“'QuantumCircuit' 的实例没有'h' 成员”

我该怎么办?

在此处输入图像描述

编码:

from qiskit import ClassicalRegister, QuantumRegister
from qiskit import QuantumCircuit, execute

q = QuantumRegister(2)
c = ClassicalRegister(2)
qc = QuantumCircuit(q)
qc.h(q[0]) 
qc.cx(q[0], q[1])
qc.measure(q, c)

job_sim = execute(qc, 'local_qasm_simulator')

sim_result = job_sim.result()

print(sim_result.get_counts(qc))

========================= 添加评论后出现同样的错误# pylint: disable=no-member

4

1 回答 1

1

有问题的错误来自 pylint,一个 linter,而不是来自 python 本身。虽然 pylint 非常聪明,但某些构造(尤其是那些涉及动态添加属性的构造)超出了它的理解能力。当你遇到这样的情况时,最好的做法是双重的:

  1. 检查文档、代码等,以确保您编写的代码是正确的(即验证 linter 结果是否为误报)
  2. 告诉 linter 你知道你在做什么,它应该忽略误报

user2357112 负责上述评论中的第一步,证明该属性是由库的另一部分动态设置的。

第二步可以为 pylint 完成,方法是在每个有问题的行之后添加一个注释,告诉它关闭对该特定行的特定检查:

qc.h(q[0])  # pylint: disable=no-member
于 2019-02-15T23:47:23.837 回答