将 Python 个项目转换为 C
Convert Python Project Into C
我是 python 的新手,但有 C 语言的经验。
我有一个 python 3 项目,包括一个 main.py
文件和另一个文件夹中的一些其他 .py
文件,如下所示:
Root
├── main.py
├── subfolder1
│ ├── __init__.py
│ ├── models.py
│ └── subfolder2
│ ├── __init__.py
│ └── models.py
里面main.py:
from subfolder1.model import BaseClass
里面先__init__.py:
from .model import BaseClass
内秒__init__.py:
from .model import BaseClass
我想将此项目转换为 C 项目以提高其性能,在该项目中有很多库,例如 numpy
、sklearn
、keras
和 scipy
被使用。
我尝试了 cython
并且我知道如何从 main.py
获取 main.c
,但是对于其他文件以及如何转换和使用子 class 方法并且是有没有一种方法可以用一个 setup.py
转换整个项目?(我对它的文档了解不多)
主要目的是 运行 在 C 中获得更好的性能,所以如果有替代方法,请提供帮助。
谢谢。
================================编辑======= ============================
我想在 models.py
中使用 BaseClass
方法,在 C Project
中使用 main.py
中的函数,问题是如何在 .py
中使用其他 .py
文件子文件夹并使用 cython
生成 C
代码。我能够转换单个 python 文件 main.py
但不知道如何在我的 C Project
.
中添加、导入或...其他文件
再次感谢。
我认为答案是否定的——您无法将整个项目简单地转换为 C。至少,不是以一种可能给你更好的表现的方式。此外,您列出的库大多已经用 C 实现,因此对这些库的调用通常很快。
你分析过代码了吗?如果您能确定瓶颈所在而不是尝试完全转换,我认为您会更幸运。
我是 python 的新手,但有 C 语言的经验。
我有一个 python 3 项目,包括一个 main.py
文件和另一个文件夹中的一些其他 .py
文件,如下所示:
Root
├── main.py
├── subfolder1
│ ├── __init__.py
│ ├── models.py
│ └── subfolder2
│ ├── __init__.py
│ └── models.py
里面main.py:
from subfolder1.model import BaseClass
里面先__init__.py:
from .model import BaseClass
内秒__init__.py:
from .model import BaseClass
我想将此项目转换为 C 项目以提高其性能,在该项目中有很多库,例如 numpy
、sklearn
、keras
和 scipy
被使用。
我尝试了 cython
并且我知道如何从 main.py
获取 main.c
,但是对于其他文件以及如何转换和使用子 class 方法并且是有没有一种方法可以用一个 setup.py
转换整个项目?(我对它的文档了解不多)
主要目的是 运行 在 C 中获得更好的性能,所以如果有替代方法,请提供帮助。
谢谢。
================================编辑======= ============================
我想在 models.py
中使用 BaseClass
方法,在 C Project
中使用 main.py
中的函数,问题是如何在 .py
中使用其他 .py
文件子文件夹并使用 cython
生成 C
代码。我能够转换单个 python 文件 main.py
但不知道如何在我的 C Project
.
再次感谢。
我认为答案是否定的——您无法将整个项目简单地转换为 C。至少,不是以一种可能给你更好的表现的方式。此外,您列出的库大多已经用 C 实现,因此对这些库的调用通常很快。
你分析过代码了吗?如果您能确定瓶颈所在而不是尝试完全转换,我认为您会更幸运。