python是用c写的,下面给大家介绍一下Python与c的联系:

python的诞生

1991年,第一个Python编译器(同时也是解释器)诞生。它是用C语言实现的,并能够调用C库(.so文件)。从一出生,Python已经具有了:类(class),函数(function),异常处理(exception),包括表(list)和词典(dictionary)在内的核心数据类型,以及模块(module)为基础的拓展系统。

Guido希望有一种语言,这种语言能够像C语言那样,能够全面调用计算机的功能接口,又可以像shell那样,可以轻松的编程。ABC语言让Guido看到希望。ABC是由荷兰的CWI (Centrum Wiskunde & Informatica, 数学和计算机研究所)开发的。Guido在CWI工作,并参与到ABC语言的开发。ABC语言以教学为目的。与当时的大部分语言不同,ABC语言的目标是“让用户感觉更好”。ABC语言希望让语言变得容易阅读,容易使用,容易记忆,容易学习,并以此来激发人们学习编程的兴趣。

python与c

Python语法很多来自C,但又受到ABC语言的强烈影响。来自ABC语言的一些规定直到今天还富有争议,比如强制缩进。但这些语法规定让Python容易读。另一方面,Python聪明的选择服从一些惯例(特别是C语言的惯例)。比如使用等号赋值,使用def来定义函数。Guido认为,如果“常识”上确立的东西,没有必要过度纠结。

Python从一开始就特别在意可拓展性(extensibility)。Python可以在多个层次上拓展。从高层上,你可以引入.py文件。在底层,你可以引用C语言的库。Python程序员可以快速的使用Python写.py文件作为拓展模块。但当性能是考虑的重要因素时,Python程序员可以深入底层,写C程序,编译为.so文件引入到Python中使用。Python就好像是使用钢构建房一样,先规定好大的框架。而程序员可以在此框架下相当自由的拓展或更改。

最初的Python完全由Guido本人开发。Python得到Guido同事的欢迎。他们迅速的反馈使用意见,并参与到Python的改进。Guido和一些同事构成Python的核心团队。他们将自己大部分的业余时间用于hack Python (也包括工作时间,因为他们将Python用于工作)。随后,Python拓展到CWI之外。Python将许多机器层面上的细节隐藏,交给编译器处理,并凸显出逻辑层面的编程思考。Python程序员可以花更多的时间用于思考程序的逻辑,而不是具体的实现细节 (Guido有一件T恤,写着:人生苦短,我用Python)。这一特征吸引了广大的程序员。Python开始流行。

python的发展

到今天,Python的框架已经确立。Python语言以对象为核心组织代码(Everything is object),支持多种编程范式(multi-paradigm),采用动态类型(dynamic typing),自动进行内存回收(garbage collection)。Python支持解释运行(interpret),并能调用C库进行拓展。Python有强大的标准库 (battery included)。由于标准库的体系已经稳定,所以Python的生态系统开始拓展到第三方包。这些包,如Django, web.py, wxpython, numpy, matplotlib,PIL.

Python从其他语言中学到了很多,无论是已经进入历史的ABC,还是依然在使用的C和Perl,以及许多没有列出的其他语言。可以说,Python的成功代表了它所有借鉴的语言的成功。同样,Ruby借鉴了Python,它的成功也代表了Python某些方面的成功。每个语言都是混合体,都有它优秀的地方,但也有各种各样的缺陷。同时,一个语言“好与不好”的评判,往往受制于平台、硬件、时代等等外部原因。

python是c语言写的吗-python是用c写的吗相关推荐

  1. python与c语言在语法上的区别-Python与C语言基础对比(Python快速入门)

    代码较长,建议使用电脑阅读本文. 10分钟入门Python 本文中使用的是Python3 如果你曾经学过C语言,阅读此文,相信你能迅速发现这两种语言的异同,达到快速入门的目的.下面将开始介绍它们的异同 ...

  2. python和c语言有什么关系-Python与C语言有什么区别?

    答题练手.手机排版不佳请谅解~ 更新2:还是关于编译和解释 二者的本质区别是在编译/解释器的总体工作方式上的,编译器是off-line,解释器是on-line.编译器把整个程序读进来,进行一系列变大变 ...

  3. 零基础学python还是c语言-零基础学Python之前需要学c语言吗

    Python本身是比较适合作为入门编程语言来学习的,一方面Python的语法结构比较简单清晰,实验也相对比较容易完成,这会逐渐增强初学者的学习信心,另一方面Python属于全场景编程语言,未来在很多领 ...

  4. python和c语言有什么关系-python和c语言的主要区别总结

    Python可以说是目前最火的语言之一了,人工智能的兴起让Python一夜之间变得家喻户晓,Python号称目前最最简单易学的语言,现在有不少高校开始将Python作为大一新生的入门语言.本萌新也刚开 ...

  5. python和c语言有什么关系-Python与c语言的区别

    作为目前最火爆的语言之一,人工智能的兴起让Python一夜之间家喻户晓,几乎所有人对于Python的理解都是"简单""易学",甚至不少中小学也开始计划将Pyth ...

  6. python基于什么语言-一种基于Python语言的EDA开发平台及其使用方法与流程

    本发明涉及EDA开发的技术领域,尤其是指一种基于Python语言的EDA开发平台及其使用方法. 背景技术: 目前,主流的EDA设计语言Verilog HDL能实现完整的芯片硬件逻辑电路开发,但是其代码 ...

  7. python调用c语言函数_从Python调用C函数

    python调用c语言函数 We can call a C function from Python program using the ctypes module. 我们可以使用ctypes模块从P ...

  8. python是动态语言图片_利用python图片生成,需10几行代码,生成的动态表情包(小黄鸭)...

    小编找到了10几行的,好玩的动态表情包生成的代码.分享分享! 这个程序怎么做呢?不要急,来听我给大家分析分析. 工具:程序环境 语言:Python 3.6 编辑器:Pycharm 程序步骤 实现字符动 ...

  9. Python与C语言基础对比(Python快速入门)

    [c,c++,c#,java?这些有什么区别?转] c,c++,c#,java?这些有什么区别? C语言: 目前最著名.最有影响.应用最广泛的windows.linux和UNIX三个操作系统都是用C语 ...

  10. python是c语言写的吗-python是c语言开发的吗

    python是c语言开发的吗? python是c语言开发的. Python是完全面向对象的语言.函数.模块.数字.字符串都是对象.并且完全支持继承.重载.派生.多重继承,有益于增强源代码的复用性.Py ...

最新文章

  1. 10 个深恶痛绝的 Java 异常。。
  2. MyBatis代码生成器-Example讲解
  3. Linux 查看目录常用命令
  4. Spring交易可见性
  5. 财务有必要学python吗-python在财务里面有用吗
  6. 高可用集群HA基本知识概述
  7. 我们眼中的资管管理行业三要素
  8. Threejs初级教程
  9. python绘制小狗_SAI教程:绘画小狗手绘板教程
  10. 会议安排(贪心算法和动态规划)
  11. 舆情传染病时空分析文献阅读笔记
  12. 计算机主机cpu内存,两分钟看懂计算机中CPU、内存、硬盘的工作原理
  13. IOS 出现不支持的 URL
  14. VS中如何导入并且播放音乐
  15. 36个助你成为专家需要掌握的JavaScript概念
  16. PyTorch深度学习入门 || 系列(四)——非线性回归
  17. Java项目中引入MySQL依赖
  18. 一文彻底搞懂Mybatis系列(十六)之MyBatis集成EhCache
  19. 洛谷 P2657 [SCOI2009] windy 数 (题解+代码)
  20. 使用frp实现内网穿透(含SSH、远程桌面、文件访问等)

热门文章

  1. JavaScript触摸与手势事件
  2. index seek与index scan
  3. redis搭建与安装2
  4. 2016.3.2(String 类)
  5. Mac开发 - 使用CCMenu和CCMenuItem添加菜单、右击菜单、Dock菜单
  6. 2003和2007PPT解析
  7. 如何成为一个好的程序员...java应用架构师之后
  8. C++11 正则表达式——实例1
  9. 最近一直想写一个关于Installshield的连载专题
  10. (转)Apache Commons工具集简介