虽然我不能完全确定这点,因为它是基于个人喜好的,但对于那些发现Python语法更加高效易用的开发者而言,为C开发Python绑定可以使开发过程更加容易。(例如,Python CUDA、3D、Kinect等库)
Python有C绑定,因为C是一种低级语言,可以非常快速和有效地支持大量的硬件和软件功能。对于初学者来说,C非常困难,并且本质上缺乏面向对象的特性,而Python针对这一点进行了改进。C缺乏面向对象的行为也促成了C ++的创建。通常,软件项目受到开发人员的速度限制,而不是代码执行速度的限制,这时Python在大多数情况下优于C。Python相对于C的优势包括:- 非常清晰,易读的语法 - 强大的内省能力 - 直观的面向对象 - 过程式代码的自然表达 - 完整的模块化,支持分层包 - 基于异常的错误处理 - 非常高级的动态数据类型 - 大量的标准库和第三方模块,几乎可以胜任任何任务 - 可以用C、C++(或Java用于Jython,或.NET语言用于IronPython)编写扩展和模块 - 作为脚本界面嵌入应用程序详情请见http://www.python.org/about/
由于C语言中存在许多经过多年测试、修复错误等方面非常高质量的库,因此试图在Python中重新实现所有内容是不明智的(例如,我永远不会使用Python中的加密库,应该使用openssl、NSS或gnutls等经过充分测试和开发的C库绑定)。