![](/img/trans.png)
[英]which is a better language (C++ or Python) for complex problem solving exercises (ex. Graphs)?
[英]Which is a better extension language for speed optimization for python c or c++
最好使用c或c ++处理python程序中的计算密集型任务,而速度最重要。 两者之间有很大区别吗? 哪个更清洁?
两者都被编译为本地代码,并且通常使用相同的编译器,因此可以使用相同的编译器优化。 您为支持C ++语言构造而付出的性能差异应该可以忽略不计。 选择一个您喜欢的/与Python集成更好的一个/与您要使用的其他本机库更好的一个。
通过使用C ++和C获得的运行时性能可以忽略不计。 就将代码与Python程序(和大多数其他语言)集成而言,使用C几乎总是更容易。实际上,如果您正在使用ctypes加载和运行代码(我建议这样做),您仍然需要围绕C ++库编写一个C接口。
如果使用SWIG ,则很容易生成C ++包装器。
与CPython的交互全部使用CPython C API完成 ,可以从C ++完全访问它(是的!)。 过去,当我完成一些SWIG编程时,我在“ normal C”中执行了实际代码,然后仅通过生成的SWIG类包装了访问权限-这只是我发现的简单方法:)
至于“性能”:
(我发现CPython扩展模块的最大优势之一是能够发布 GIL,从而能够拥有真正的线程代码-当然,[Python] CPython C API通常只能在获取GIL后安全地访问。 )
快乐的代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.