草庐IT

ctype_digit

全部标签

c++ - 如何使用 ctypes 将数组从 C++ 函数返回到 Python

我正在使用ctypes在Python中实现一个C++函数。C++函数应该返回一个指向数组的指针。不幸的是,我还没有弄清楚如何在Python中访问数组。我尝试了numpy.frombuffer,但没有成功。它只是返回了一个任意数字的数组。显然我没有正确使用它。这是一个大小为10的数组的简单示例:function.cpp的内容:extern"C"int*function(){int*information=newint[10];for(intk=0;kwrapper.py的内容:importctypesimportnumpyasnpoutput=ctypes.CDLL('./library

c++ - 如何使用 ctypes 将数组从 C++ 函数返回到 Python

我正在使用ctypes在Python中实现一个C++函数。C++函数应该返回一个指向数组的指针。不幸的是,我还没有弄清楚如何在Python中访问数组。我尝试了numpy.frombuffer,但没有成功。它只是返回了一个任意数字的数组。显然我没有正确使用它。这是一个大小为10的数组的简单示例:function.cpp的内容:extern"C"int*function(){int*information=newint[10];for(intk=0;kwrapper.py的内容:importctypesimportnumpyasnpoutput=ctypes.CDLL('./library

python - 如何将 ctypes 的 c_long 转换为 Python 的 int?

int(c_long(1))不起作用。 最佳答案 >>>ctypes.c_long(1).value1 关于python-如何将ctypes的c_long转换为Python的int?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2330587/

python - 如何将 ctypes 的 c_long 转换为 Python 的 int?

int(c_long(1))不起作用。 最佳答案 >>>ctypes.c_long(1).value1 关于python-如何将ctypes的c_long转换为Python的int?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2330587/

python 正则表达式: get end digits from a string

我对python和正则表达式很陌生(这里是正则表达式新手),我有以下简单的字符串:s=r"""99-my-name-is-John-Smith-6376827-%^-1-2-767980716"""我只想提取上述字符串中的最后一位数字,即767980716,我想知道如何使用python正则表达式来实现这一点。我想做类似的事情:re.compile(r"""-(.*?)""").search(str(s)).group(1)表示我想在(.*?)之间找到以“-”开头并以字符串结尾结束的内容-但这不返回任何内容..我想知道是否有人能指出我正确的方向..谢谢。 最佳

python 正则表达式: get end digits from a string

我对python和正则表达式很陌生(这里是正则表达式新手),我有以下简单的字符串:s=r"""99-my-name-is-John-Smith-6376827-%^-1-2-767980716"""我只想提取上述字符串中的最后一位数字,即767980716,我想知道如何使用python正则表达式来实现这一点。我想做类似的事情:re.compile(r"""-(.*?)""").search(str(s)).group(1)表示我想在(.*?)之间找到以“-”开头并以字符串结尾结束的内容-但这不返回任何内容..我想知道是否有人能指出我正确的方向..谢谢。 最佳

Python ctypes : loading DLL from from a relative path

我有一个Python模块wrapper.py,它包装了一个CDLL。DLL与模块位于同一文件夹中。因此,我使用下面的代码来加载它:myDll=ctypes.CDLL("MyCDLL.dll")如果我从它自己的文件夹中执行wrapper.py这将有效。但是,如果我从其他地方运行它,它就会失败。这是因为ctypes计算相对于当前工作目录的路径。我的问题是,有没有一种方法可以指定DLL相对于包装器的路径而不是当前工作目录?这将使我能够将两者一起发布并允许用户从任何地方运行/导入包装器。 最佳答案 可以使用os.path.dirname(_

Python ctypes : loading DLL from from a relative path

我有一个Python模块wrapper.py,它包装了一个CDLL。DLL与模块位于同一文件夹中。因此,我使用下面的代码来加载它:myDll=ctypes.CDLL("MyCDLL.dll")如果我从它自己的文件夹中执行wrapper.py这将有效。但是,如果我从其他地方运行它,它就会失败。这是因为ctypes计算相对于当前工作目录的路径。我的问题是,有没有一种方法可以指定DLL相对于包装器的路径而不是当前工作目录?这将使我能够将两者一起发布并允许用户从任何地方运行/导入包装器。 最佳答案 可以使用os.path.dirname(_

python - 使用 numpy/ctypes 公开 C 分配的内存缓冲区的更安全方法?

我正在为C库编写Python绑定(bind),该库使用共享内存缓冲区来存储其内部状态。这些缓冲区的分配和释放是由库本身在Python之外完成的,但我可以通过从Python中调用包装的构造函数/析构函数来间接控制何时发生这种情况。我想向Python公开一些缓冲区,以便我可以从中读取,并在某些情况下将值推送给它们。性能和内存使用是重要的问题,因此我希望尽可能避免复制数据。我目前的方法是创建一个numpy数组,它可以直接查看ctypes指针:importnumpyasnpimportctypesasClibc=C.CDLL('libc.so.6')classMyWrapper(object)

python - 使用 numpy/ctypes 公开 C 分配的内存缓冲区的更安全方法?

我正在为C库编写Python绑定(bind),该库使用共享内存缓冲区来存储其内部状态。这些缓冲区的分配和释放是由库本身在Python之外完成的,但我可以通过从Python中调用包装的构造函数/析构函数来间接控制何时发生这种情况。我想向Python公开一些缓冲区,以便我可以从中读取,并在某些情况下将值推送给它们。性能和内存使用是重要的问题,因此我希望尽可能避免复制数据。我目前的方法是创建一个numpy数组,它可以直接查看ctypes指针:importnumpyasnpimportctypesasClibc=C.CDLL('libc.so.6')classMyWrapper(object)