首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python/Q#:找不到模块错误,.qs文件在同一目录下

Python/Q#:找不到模块错误,.qs文件在同一目录下
EN

Stack Overflow用户
提问于 2020-04-13 17:15:17
回答 1查看 284关注 0票数 0

最近,我开始使用Q#和python作为主机语言。我当时正在做一个项目,一切看起来都很好。突然,我得到了错误“模块找不到”,我似乎在我以前的所有项目中也得到了它。

所以我有一个目录:bb84.qs在这个文件夹中我有两个文件: HostProtocol.py,它是主文件,BB84.qs,它是我想要导入的文件。

HostProtocol.py文件如下所示:

代码语言:javascript
复制
import qsharp

from Quantum.BB84 import Run_BB84Protocol
Run_BB84Protocol.simulate()

BB84.qs文件如下所示:

代码语言:javascript
复制
namespace Quantum.BB84 {
    open Microsoft.Quantum.Arrays;
    open Microsoft.Quantum.Measurement;
    open Microsoft.Quantum.Canon;
    open Microsoft.Quantum.Intrinsic;
    open Microsoft.Quantum.Diagnostics;
    open Microsoft.Quantum.Convert;
    open Microsoft.Quantum.Math;

function Run_BB84Protocol() Unit{... the code from the function...}
}

当我尝试运行HostProtocol.py时,我得到以下错误消息:

出现异常:在Quantum.BB84导入Run_BB84Protocol中,没有名为'Quantum‘文件"C:\Users\Username\Q#projects\HostProtocol.py",第3行的模块

这也适用于我之前的所有项目。这非常令人沮丧,我不知道是什么原因造成的,因为它以前工作得很好。任何帮助都是绝对欢迎的!

EN

回答 1

Stack Overflow用户

发布于 2020-04-13 23:34:00

如果您的Q#源文件中有任何Q#编译错误,您的Q#操作和函数将不可用。检查Python输出中的错误。当我运行您提供的示例代码时,它在Q#代码中报告了一个语法错误(在返回类型Unit之前缺少一个冒号):

代码语言:javascript
复制
 fail: Microsoft.Quantum.IQSharp.Workspace[0]
       QS3211: Invalid return type annotation. The argument tuple needs to be followed
       by a colon and the return type of the callable.
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61184725

复制
相关文章

相似问题

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