python怎样使用cpython
时间: 2024-01-10 18:51:16 浏览: 84
cpython
CPython 是 Python 的官方实现,它是用 C 语言实现的。如果你安装了 Python,那么你已经安装了 CPython。你可以在命令行中输入 `python` 来启动 CPython 解释器。
使用 CPython,你可以编写 Python 代码,并执行它们。你还可以使用 C 或 C++ 编写 Python 扩展模块,以扩展 Python 的功能。为了编写扩展模块,你需要使用 Python 的 C API,这些 API 允许你在 C 或 C++ 中操作 Python 对象。
下面是一个使用 CPython 的示例:
```python
# hello.py
print("Hello, world!")
```
你可以在命令行中使用以下命令来执行 hello.py:
```
$ python hello.py
Hello, world!
```
如果你想编写 Python 扩展模块,那么你需要使用 CPython 的 C API。一个简单的示例是使用 CPython 的 C API 来编写一个函数,将两个 Python 整数相加,并返回结果。
```c
// add.c
#include <Python.h>
static PyObject *add(PyObject *self, PyObject *args) {
int a, b;
if (!PyArg_ParseTuple(args, "ii", &a, &b)) {
return NULL;
}
return PyLong_FromLong(a + b);
}
static PyMethodDef methods[] = {
{"add", add, METH_VARARGS, "Add two integers."},
{NULL, NULL, 0, NULL}
};
static struct PyModuleDef module = {
PyModuleDef_HEAD_INIT,
"my_module",
"My custom module.",
-1,
methods
};
PyMODINIT_FUNC PyInit_my_module(void) {
return PyModule_Create(&module);
}
```
你可以使用以下命令将其编译为共享库:
```
$ gcc -shared -o my_module.so add.c $(python3-config --ldflags)
```
然后,你可以在 Python 中使用它:
```python
# main.py
import my_module
result = my_module.add(1, 2)
print(result)
```
你可以在命令行中使用以下命令来执行 main.py:
```
$ python main.py
3
```
阅读全文