使用C++创建Pyd文件扩展Python模块

原创 2017年01月17日 22:23:09

1、需要说明的是Pyd文件其实就是dll,为了python能正常调用,这个dll规定了导出函数的一些规则。下面代码简单演示使用c++创建一个函数,并使用Python调用该模块。

(注意需要添加python的head路径和lib路径,具体操作,可见下面的视频链接)

#include <Python.h>
#include <iostream>

//需要绑定的方法
static PyObject* PrintHello(PyObject *self, PyObject *args)
{
	std::cout << "Hello, I am form c++" << std::endl;

	//测试一下使用c++/clr,让python调用
// 	System::Windows::Forms::Form^ TestDotNetWindows = gcnew System::Windows::Forms::Form();
// 	TestDotNetWindows->ShowDialog();

	Py_INCREF(Py_None);
	return Py_None;
}

//描述方法
static PyMethodDef Methods[] = {
	{"PrintHelloFn", PrintHello, METH_VARARGS, "文档字符串"},
	{NULL, NULL}
};

//初始化模块
PyMODINIT_FUNC initPrintHello(void)
{
	Py_InitModule("PrintHello", Methods);
}

2、上述代码具体使用请点击下面视频。

http://player.youku.com/player.php/sid/XMjQ3NDY0MjUxNg==/v.swf


Python和C|C++的混编(一):Python调用C、C++---Boost库

不使用boost.python库来直接构建dll的话比较繁琐,下面实例是借助boost库实现python对C、C++的调用 1 首先确定已经安装python和boost库,本例测试环境是python2...

使用C++扩展Python的功能

使用C++扩展Python的功能       环境 VS2005Python2.5.4 Windows7(32位)   简介 长话短说,这里说的扩展Python功能与直接用其它语言写一...

Python import .pyd 可能遇到路径的问题

Python import .pyd文件时会搜索sys.path列表中的路径 运行 import xxx.pyd 1. 'ImportError: No module named xxx' ...

pyx文件 生成pyd 文件用于 cython调用

写pyx文件pyx文件是python的c扩展文件,代码要符合cython的规范,用什么编辑器写都行。我在eric4上写的,结果它默认用python解释器来进行解释,还提示有bug,“语法错误”。不理会...

Python 程序扩展名(py, pyc, pyw, pyo, pyd)及发布程序时的选择

在写Python程序时我们常见的扩展名是py, pyc,其实还有其他几种扩展名。下面是几种扩展名的用法。...

python py、pyc、pyo、pyd文件区别

py是源文件,pyc是源文件编译后的文件,pyo是源文件优化编译后的文件,pyd是其他语言写的python库 python并非完全是解释性语言,它是有编译的,先把源码py文件编译成pyc或者pyo...
  • willhuo
  • willhuo
  • 2015年11月17日 13:59
  • 8934

python 文件 .py .pyc .pyw .pyo .pyd

DLL文件即动态链接库文件,是一种可执行文件,它允许程序共享执行特殊任务所必需的代码和其他资源。打不开,不过可以使用反汇编;PYD是一种PYTHON动态模块。实质上还是dll文件,只是改了后缀为PYD...

CString 字符分割 函数

出处:http://www.blogguy.cn/show-744-1.html VC中自带的只有使用字符分割字符串的split函数,还羞答答的。 如果要实现字符串分割的话还得自己想办法,...

CTime以及其它时间差CTimeSpan

CTime以及其它时间差 2008-10-17 23:04 一、DateTimePicker控件 引用一个DateTimePicker控件,关联变量m_date为DateTi...

Opencv-python的安装文件cv.pyd

  • 2017年01月26日 12:24
  • 34.24MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用C++创建Pyd文件扩展Python模块
举报原因:
原因补充:

(最多只允许输入30个字)