【Python -- dict 类】教程文章相关的互联网学习教程文章

相当于C结构的Python(将应用程序形式C移植到python)【代码】

我正在移植一个简单??的蓝牙应用程序,它将基于L2Cap协议的“魔术”数据包发送到蓝牙设备. 我在将C中的struct对象转换为python等效项时遇到问题. 在c中:/* command types */ #define CFGBT_TYPE_SETREQ 0x00 #define CFGBT_TYPE_SETRES 0x01 #define CFGBT_TYPE_GETREQ 0x02 #define CFGBT_TYPE_GETRES 0x03/* varid types */ #define CFG_VARIDT_UINT16 0x0000 #defin...

Python到C#减少对函数的理解【代码】

我正在努力理解下面用python编写的“ reduce”调用. 我在这里和其他地方都发现了一些说明函数功能的资源,并且在C#中有等效的“聚集”列表,但是我无法理解下面的调用实际上是什么-期望-…可能因为我真的不知道’_keep_left’返回什么? 所以: 1-有人可以告诉我’_keep_left’返回什么吗? 2-,[])在reduce调用中是什么意思? 非常感谢.TURN_LEFT, TURN_RIGHT, TURN_NONE = (1, -1, 0)def turn(p, q, r):"""Returns -1, 0, 1 if p,q,...

如何为Python包装C库?【代码】

我有一个库和一些头文件,没有C源代码,我想将它与python一起使用.我尝试了py,但gccxml报告错误.我尝试了swig,但遇到了许多“未定义符号”错误.是否有一些智能工具可以自动执行此类操作?解决方法:您可以尝试使用boost python 您需要创建一个链接到原始库的简单包装dll,其中包含与此类似的代码(假设您要导出具有2个函数foo& bar的类LibraryClass)#include <librarytowrap.h> #include <boost/python.hpp> using namespace boost::pyt...

C定义函数中来自Python的默认参数?【代码】

我已经在我的C应用程序中嵌入了Python,并且创建了几个可以从Python调用的C函数. 为了得到论点,我目前正在做:if (!PyArg_ParseTuple(args, "zk", &param1, &param2))return NULL;但是,我希望param2是可选的.如何分别检查两个?解决方法:You don’t.|Indicates that the remaining arguments in the Python argument list are optional. The C variables corresponding to optional arguments should be initialized to their defau...

c-嵌入python并运行多次【代码】

我正在使用boost :: python嵌入python,这是我的方法:void runCode(){Py_Initialize();//boost::python code goes here and embedded python code runsPy_Finalize(); }第一次运行良好,但是再次运行时,出现此错误:LookupError: unknown encoding: utf8并且代码未按预期运行,请多多帮助.解决方法:由于您没有得到专家的答案,因此我提供了解决类似问题的经验.Python的reinitialization support存在问题.如果由于某些错误而需要重新启...

C#.NET与托管Python(CPython)的互操作性->有问题吗?

我正在设计应用程序.核心应该用C#编写,但我也想使用一些已经完成的CPython模块(非托管). 因此,我对互操作性感兴趣(从C#调用CPython方法,从CPython调用C#).如果有问题,因为C#在.NET运行时(托管)内运行,而CPython直接在非托管范围内运行. 我已经通过Google调查了此问题,并提出了以下解决方案: >通过DLR使用IronPython,“ CPython扩展名”或“ IronClad”并从IronPython调用CPython模块,反之亦然->这些模块是托管的还是非托管的?如果...

为C(指针)创建python的Swig包装器【代码】

我是swig的一个新手,我正在尝试创建一个swig包装器,以便在python中使用一些C文件.我有以下C类. 以下是我尝试转换的代码的片段:/*packet_buffer.h*/ class CPacketBuffer {public:// construct based on given buffer, data is not copiedCPacketBuffer(uint8_t* data, uint32_t length) {mpBuffer = data;mLength = length;mHead = 0;mTail = length;}uint8_t* GetBuffer() {return (mpBuffer + mHead);}void Add(const ui...

在Pydev / Eclipse中的python程序中使用外部C库【代码】

我正在将Eclipse PyDev用于Python项目.我安装了PyDAQmx,它利用了DAQmx的C库.但是,无论何时导入该文件中的任何函数或引用任何常量,尽管导入了必要的部分,但都会出现“未定义的变量”错误.该程序运行良好,所以我认为这是Eclipse / PyDev不与C库链接的原因.我已将其作为外部库包含在内,但仍然出现相同的错误. 这是一个代码示例.这是有效的,并且如果我运行它也可以正常工作,但是尝试使用Eclipse来寻找实际错误总是很烦人,因为它总是告诉...

python调用c++【代码】

C++代码 ctypes.cpp #include <stdio.h> #ifdef _WIN32#define LIB __declspec(dllexport) #else#define LIB #endifextern "C" LIB void CtypesDemo(int x,int y){printf("公众号:Python学习开发%d %d\n",x,y); } 因为系统不同,调用方式不同 _WIN32:表示win32和win64 __declspec(dllexport)用于Windows中的动态库中,声明导出函数、类、对象等供外面调用。 extern "C" 的作用是让 C++ 编译器将 extern "C" 声明的代码当作...

python字符串和C字符数组之间的相似性【代码】

我试图在python字符串和将C字符数组分配给字符串文字之间建立联系.例如:char* word="Hello";word="Now";分配给放置在只读存储器位置中的字符串“ Hello”.现在,将单词重新分配为“ Now”意味着现在为字符数组分配了一个对应于“ Now”的存储位置. 在python中,偶数(显然还有字符串)的工作方式与之相似,先将值2分配给内存位置,然后再将值3分配给内存位置.a=2a=3这与C相反,在C中,几乎所有变量分配都包含变量所分配的值.我在这里做一个...

如何将复数从python numpy传递给c(目前尝试使用SWIG)【代码】

我想用python调用带有复数输入的c编写函数.我尝试使用SWIG生成包装器-但它似乎掉下来了.我认为我需要找出适合在numpy.i中使用的“宏”-但不确定是什么-任何人对此都有任何经验-或其他可以解决此问题的方法? numpy.i在底部显示了它-尽管已被注释掉.我尝试使用这些宏-但是它们失败了,SWIG抱怨我尝试了以下宏扩展的语法错误:%numpy_typemaps(complex float, NPY_CFLOAT , int) %numpy_typemaps(complex double, NPY_CDOUBLE, int) %...

python-具有硬边距和C值的svm【代码】

我必须创建一个带有RBF内核和硬边距的svm分类器.如果我正确理解,则余量的种类由C参数控制.也就是说,C参数越大,我得到的硬边界就越大.是否有一个典型的C值模拟非常健壮的“硬边距”?还是有其他方法可以模拟强大的硬边距?当然,我们总是可以讨论为什么我们需要模仿硬利润.但是在这种情况下,我需要模仿它!clf = svm.SVC(C = ??,kernel="rbf",gamma =1.5,shrinking=False,cache_size=3000)解决方法:通常,您不需要那么大的值,但总的来...

通过IronPython在C#中评估三角函数【代码】

我试图使用Iron-Python二进制文件中的Python引擎来评估一些与流体力学相关的表达式.我已经到达以下代码:ScriptEngine engine = Python.CreateEngine(); ScriptSource source = engine.CreateScriptSourceFromString("import math", SourceCodeKind.AutoDetect); source.Execute(); source = engine.CreateScriptSourceFromString("2*sin (2)", SourceCodeKind.AutoDetect); button1.Text = source.Execute<float>().ToString();每...

python-调用C函数.是谁打来的【代码】

当python使用调用C函数static PyObject* Myfunction (PyObject *self, PyObject *args)有什么办法可以知道调用者是谁,即函数和模块?这将使我拥有可以分配大量方法的单个方法.香港专业教育学院想到了黑客,如在调用中传递字符串名称后跟参数,例如call ("math", "sin", 2.5)但这并不理想.解决方法:您不能直接获取模块函数,但是可以获取任何Python(解释的)堆栈框架的文件名和函数名称. 该函数返回带有调用者的文件名和函数名称的元组使...

Python调用C:C如何发送被调用的Python行号?

我有一个Python代码,调用了一些C代码(.so文件). 有没有办法从C代码中获取从Python端调用的行号?解决方法:我最终找到了PyFrame_GetLineNumber(PyFrameObject * f)C函数,其源代码位于frameobject.c中.