python:.py文件转.dll文件(.pyd文件)
基于python,把python文件转为.dll文件,我查了很多方法,没有能把python文件直接转.dll文件的。.py要转dll文件都是先转成.pyd文件,然后再把.pyd这个后缀改成.dll,如此才成功地把.py文件转为了.dll文件。.py文件转.pyd文件,我综合了我搜索到地教程,写成以下的三个方法。下面的方法都是基于我安装了anaconda,以及c++语言相关的程序(c++相关程序是个坑,要必须安装的,否者转不成功的)
方法一
第一步,打开cmd(命令行),安装第三方库easycython,输入以下代码(提醒:这里我开头说过我是安装了anaconda的,并且把anaconda的环境变量配置到系统的环境变量了,配置环境变量可以参考这篇博客:添加anaconda环境变量)
pip install easycython
第二步,创建一个.py文件,如test.py,文件内容如下:
def test():print("调用成功")ruturn 11
接着把 test.py 文件重命名为 test.pyx
第三步,打开cmd进入test.pyx 文件所在目录,输入以下代码:
easycython *.pyx
得到如下图,则py文件转.pyd文件完成
图中黄线是我进去.pyx文件所在的文件夹(目录)的操作,红线则是说明转换完成了
方法二
第一步,在anaconda已创建的环境中安装cython库,代码如下:
pip install Cython
第二步,创建一个名为 py_to_pyd.py 文件,内容如下代码:
import Cython.Build
import distutils.coredef py2c(file):cpy = Cython.Build.cythonize(file) # 返回distutils.extension.Extension对象列表distutils.core.setup(name='pyd的编译', # 包名称version="1.0", # 包版本号ext_modules=cpy, # 扩展模块author="wode", # 作者author_email='wode@163.com' # 作者邮箱)if __name__ == '__main__':file = "atest.py"#需要转的py文件的名字(有时候可以写文件的绝对路径)py2c(file)
其中 atest.py 为要转的py文件
第三步,在PyCharm中打开Terminal终端,输入一下代码:
python py_to_dll.py build_ext --inplace
如图所示
得到下图,则说明转换完成
用这个方法的好处是,不用考虑python的版本问题,即调用时不会出现下面矩形框中的问题
同时图中椭圆框中,导入时虽然出现红线,但是不影响调用
方法三
算了我不想写了,参考一下这篇博客吧
https://blog.csdn.net/kdongyi/article/details/102678595
python:.py文件转.dll文件(.pyd文件)相关推荐
- python隐藏源码,生成pyd文件并调用的完整过程
目录 pyd 特点及生成方式 首先需要在 demo.py 同目录下新建个 setup.py 文件,具体代码如下 在生成之前或许我们需要先做一个事情,那就是安装vs_buildtools 在命令行 ...
- python调用pyd文件_如何将.pyd文件作为python模块导入?
我在用PyCharm.我在以下位置有一个python脚本: C:\Users\XYZ\PycharmProjects\Project1\playground.py playground.py只有一行代 ...
- python使用pyd文件_python – 如何创建.pyd文件?
您必须在终端中运行setup.py文件.这是一个使用numpy的例子 try: from setuptools import setup from setuptools import Extensio ...
- python调用pyd_Python生成pyd文件
Python的脚本文件是开源的,量化策略的安全性没有保障.因此需要保护源码.那么要对Python代码进行混淆.加密保护. 混淆代码,我准备使用pyminifier.而加密处理,就比较麻烦. Pytho ...
- python import文件pyd_Python生成pyd文件
Python的脚本文件是开源的,量化策略的安全性没有保障.因此需要保护源码.那么要对Python代码进行混淆.加密保护. 混淆代码,我准备使用pyminifier.而加密处理,就比较麻烦. Pytho ...
- python的pyd文件_Python 加密之 生成pyd文件
混淆代码,我准备使用pyminifier.而加密处理,就比较麻烦. Python有py.pyc.pyw.pyo.pyd等文件格式. 其中,pyc是二进制文件.但很容易被反编译. pyw也不行,只是隐藏 ...
- 简单快速清理 联想电脑 顽固可疑程序文件 comup.dll(风险名称: Adware/Hyideo )的方法 PS:该方法对于删除 .dll 文件均有效
注:该方法对删除任何一个.dll文件均有效,请继续阅读. 文章目录 前言 一.删除comup.dll文件 1.方法:下载**Unlocker**软件 2. 关于下载 对于联想电脑用户而言, 对于非联想 ...
- Python代码加密:py文件转pyd文件
目前使用python语言比较多,尤其是深度学习项目,但是使用python加密比较麻烦,前期接触过几种加密的方案,但是效果都不理想,现在有一种思路比较靠谱:python原文件转pyd,然后用加密狗加密p ...
- python py生成及调用pyd(so)文件
本文仅供学习交流使用,如侵立删!demo下载见文末 py文件生成pyd文件 1.安装 cython:注意不是cpython pip install cpython 2.py文件生成pyd文件 from ...
最新文章
- 56岁潘石屹下定决心学Python,60多岁程序语言之父们还在敲代码,你还敢懈怠吗?...
- python安装第三方库-Python安装第三方库的3种方法
- python进阶:switch语句、推导式与None类型
- LibSVM for Python 使用
- win10如何设置麦克风?
- 数据科学中的Docker
- 如何设置wiki权限
- 【图像处理】——正装照换底色Python
- Unique Binary Search Trees
- mysql必知必会 create_mysql必知必会--检 索 数 据
- 关于计算机的多媒体论文题目,浅谈计算机多媒体电子相册设计与制作(毕业论文)...
- JAVA IP地址转成长整型方法
- php颜色淡入代码,JavaScript_jquery 淡入淡出效果的简单实现,样式:复制代码 代码如下:nbsp - phpStudy...
- SpringBoot+Querydsl 框架,大大简化复杂查询操作
- python socket编程实例代码(含服务端和客户端)
- 【AI视野·今日CV 计算机视觉论文速览 第181期】Tue, 7 Apr 2020
- 解决Extraneous non-props attributes (border, class) were passed to component but could not be
- Java面向对象系列[v1.0.0][枚举类]
- html战旗游戏,战棋页游-策略类战棋网页游戏推荐
- LA 4394 刷字符串(区间dp)