量子编程入门第一篇环境搭建dotnet-sdk+Microsoft.Quantum.IQSharp+python3.6+qsharp

    量子编程已经提上日程,微软提供了quantum开发工具包 Microsoft Quantum Development Kit简称QDK,在visual studio 2019环境下,可以安装quantum工具,本人试过在visual studio 2017下无法安装这个工具,只能按照微软提供的简易安装环境。环境要求python3.6、dotnet-sdk-2.1及以上。如下图所示:

    

    这里我的python环境是3.7.4,.Net Core SDK版本是2.2.108。这里主要是需要安装dotnet环境。我选择的是压缩包的sdk。下载地址是:https://dotnet.microsoft.com/download/dotnet-core/2.2。选择一个合适的版本即可。

    我的dotnet-sdk-2.2.108-win-x64.zip解压到一个目录,然后将该目录加入环境变量就可以了。验证dotnet版本信息:

    

    接着就可以进行dotnet tool install -g Microsoft.Quantum.IQSharp安装了。 安装过程会下载dotnet-iqsharp.exe到系统用户目录下的.dotnet\tools目录下。如下所示:

       

    接着,我们需要在命令行下进入该目录,然后运行dotnet iqsharp install,如果不到该目录下运行此命令,会报错,找不到dotnet-iqsharp.exe文件。安装成功的情况:

C:\Users\Administrator>dotnet iqsharp install
[InstallKernelSpec] Installed kernelspec iqsharp in C:\ProgramData\jupyter\kernels\iqsharp

    windows环境准备好了,接下来需要pip安装qsharp依赖。pip install qsharp,这个依赖需要依赖pywin32等等,安装完成,我们查看安装的库。

    

    以上到这里,环境就全部准备好了,我们可以编写两个文件,一个是q#编写的Operation.qs,一个是hello_world.py。内容如下所示:

    Operation.qs

namespace HelloWorld
{
        open Microsoft.Quantum.Intrinsic;
        open Microsoft.Quantum.Canon;

        operation SayHello() : Result {
                Message("Hello from Quantum!");
                return Zero;
        }
}

    hello_world.py 

import qsharp
from HelloWorld import SayHello
SayHello.simulate()

    直接运行python hello_world.py,打印了Hello from Quantum!表示成功了。 

    

    第一次运行python hello_world.py的时候,如果报错,基本就是win32api的问题,后面有介绍如何解决。如果不报错,那么第一次运行会比较慢,按照提示,好像需要准备Q#环境。再次执行,就很快打印结果了。 

    整个搭建过程中,遇到的问题如下:

    1、dotnet运行dotnet tool install -g Microsoft.Quantum.IQSharp正常,但是运行dotnet qsharp install的时候,报错,找不到dotnet-iqsharp.exe可执行程序,最后到~\.dotnet\tools目录下运行即可。

    2、通过pip install qsharp安装qsharp库之后,运行程序,报错提示找不到win32api模块,其实已经安装了,有可能是我们的sys.path中没有包含win32相关的路径。因为我的python不是通过msi的方式安装,直接使用的二进制压缩包安装,很多环境变量需要手动增加到sys.path中,这里给出我的sys.path的配置。找到python安装目录下的python37._pth文件,加入以下路径:

.\Lib\site-packages\pywin32_system32\
.\Lib\site-packages\win32\
.\Lib\site-packages\win32\lib
.\Lib\site-packages\pythonwin

    最后可以在python交互式环境中验证win32api是否已经可以通过import导入了。

C:\Users\Administrator\Desktop\test>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul  8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
>>> import win32api
>>>
>>>

    没有报错,则表示sys.path已经配置正确了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

luffy5459

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值