python 简介

简介: python 简介

前言

        最近Python风头有点高,Python在TIOBE排名榜上超过C语言和Java成为第一,然后我准备好好了解(学习)下,在这里做下学习笔记分享 我认为不管学习什么,第一件事肯定是了解它的诞生以及发展历史;

       Python 是一种极少数能声言兼具。简单而又功能强大的编程语言,它专注于如何解决问题,而非拘泥于语法与结构。

官方对 Python 的介绍如下:

       Python 是一款易于学习且功能强大的编程语言。 它具有高效率的数据结构,能够简单又有效地实现面向对象编程。

       简洁的语法与动态输入特性,加之其解释性语言的本质,使得它成为一种在多种领域与绝大多数平台都能进行脚本编写与应用快速开发工作的理想语言。

Python简介

       Python 的创造者吉多·范罗苏姆(Guido van Rossum),江湖人称“龟叔”,采用 BBC 电视节目《蒙提·派森的飞行马戏团(Monty Python’s Flying Circus,一译巨蟒剧团)》的名字来为这门编程语言命名。 尽管他本人并不是特别喜欢蟒蛇这种通过在猎物身边,卷曲自己的身体,以此来碾碎猎物身体进食的动物。

       1989年,为了打发圣诞节假期,罗苏姆开始写Python语言的编译解释器。罗苏姆作为一名语言设计爱好者,已经有过设计语言的的尝试。虽然上次的语言设计并不成功,但罗苏姆依然乐在其中。这一次设计Python语言,也不过是他又一次寻找乐趣的小创造。

       1991年,第一个Python编译/解释器诞生。它是用C语言实现的,能够调用C语言生成的动态链接库。

       从一出生,Python就已经具有了一直保持到现在的基本语法:类(class)、函数(function)、异常处理(exception)、包括表(list)和词典(dictionary)在内的核心数据类型,以及模块(module)为基础的拓展系统。

       Python还特别在意可拓展性(extensibility),这是罗苏姆实用主义原则的又一体现。Python可以在多个层次上拓展。从高层上,你可以引入其他人编写的Python文件,来为自己的代码拓展功能。

       如果出于性能考惠,你还可以直接引入C和C++语言编译出的库。由于C和C++语言在代码方面的多年储备,Python相当于站在了巨人的肩膀上。Python就像是建房一样,先规定好大的框架,再借着模块系统给程序员自由发挥的空间。

       最初的Python完全由罗苏姆本人开发。由于Python隐藏了许多机器层面上的细节,并显示出了逻辑层面的编程思考,所以这个好用的语言得到了罗苏姆同事的欢迎。同事们在工作中乐于使用Python,然后向罗苏姆反馈使用意见,其中不少人都参与到语言的改进。

       罗苏姆和他的同事构成了Python的核心团队,他们将自己大部分的业余时间都奉献给了Python。Python也逐渐从罗苏姆的同事圈传播到其他科研机构,慢慢用于学术圈之外的程序开发

       Python的流行与计算机的性能提升以及互联网发展迅速有关;

 

       20世界90时代,微软和英特尔续PC以令天下,几乎型断了个人电脑市场。当时,大众化的信息革命尚未到来,但对于近水楼台的程序员来说,互联网已经是平日里常用的工具。

       程序员率先使用互联网进行交流,如电子邮件和新闻组。互联网让信息交流成本大大降低,也让有共同爱好的人能够跨越地理限制聚合起来。以互联网的通信能力为基础,开源(OpenSource)的软件开发模式变得流行。程序员利用业余时间进行软件开发,并开放源代码。

       罗苏姆本人也是一位开源先锋,他维护了一个邮件列表,并把早期的Python用户都放在里面。早期Python用户就可以通过邮件进行群组交流。

       这些用户大多都是程序员,有相当优秀的开发能力。他们来自许多领域,有不同的背景,对Python也提出了各种各样的功能需求。由于Python相当开放,又容易拓展,所以当一个人不满足于现有功能时,他很容易对Python进行拓展或改造。随后,这些用户将改动发给罗苏姆,由他决定是否将新的特征加入到Python中。

       如果代码能被采纳,将会是极大的荣誉。罗苏姆本人的角色越来藏偏重于框架的制定。如果问题太复杂,则罗苏姆会选择绕过去,也就是走捷径,把其留给社区的其他人解决。就连创建网站、筹集基金这样的事情,也有人乐干处理。社区日渐成熟,

       对于初学编程的人来说,从Python开始学习编程的好处很多,如语法简单和模块丰富。国外许多大学的计算机导论课程,都开始选择Python作为课程语言,替代了过去常用的C或Java。

       但如果把Python当作所谓的“最好的语言”,希望学一门Python就成为“万人敌”,则是一种幻想。每个语言都有它优秀的地方,但也有各种各样的缺陷。一个语言“好与不好”的评判,还受制于平台、硬件、时代等外部原因。更进一步,很多开发工作需要特定的语言,比如用Java来编写安卓应用,用Obiective-C或Swift来编写苹果应用。

       无论从哪一门语言学起,最终都不会拘泥于初学的那门语言。只有博彩众家,才能让编程的创造力自由发挥。

什么是Python?

       Python (发音[par0an] )本义是指“蟒蛇”(这里需要说明的是,Python 并不是以鳞蛇命名,而是以电视节目Monty Python's Flying Circus来命名的),它是1989年由荷兰人Guidovan Rossum发明的种面向对象的解释型高级编程语言。 它的设计哲学为优雅、明确、简单。实际上,Python也是按照这个理念做得,以至于现在网络上流传着“人生苦短,我用Python"的说法。可见Python有着简单、开发速度快、节省时间和精力等特点。

 

       Python本身并非所有的特性和功能都集成到语言核心,而是被设计为可扩充的。它具有丰富和强大的库,能够把用其他语言(尤其是C/C++) 制作的各种模块很轻松地联结在一起。 为此,Python 常被称为“胶水”语言。

       在1991年Python的第一个公开发行版问世之后,Python 的发展并不突出。自从2004年以后,Python的使用率呈线性增长。在2010年时,Python 赢得TIOBE 2010年度语言大奖。在2017年,IEEESpectrum发布的2017年度编程语言排行榜中,Python 位居第一。

相关文章
|
1月前
|
网络协议 Java Linux
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
本文介绍了PyAV库,它是FFmpeg的Python绑定,提供了底层库的全部功能和控制。文章详细讲解了PyAV的安装过程,包括在Windows、Linux和ARM平台上的安装步骤,以及安装中可能遇到的错误和解决方法。此外,还解释了时间戳的概念,包括RTP、NTP、PTS和DTS,并提供了Python代码示例,展示如何获取RTSP流中的各种时间戳。最后,文章还提供了一些附录,包括Python通过NTP同步获取时间的方法和使用PyAV访问网络视频流的技巧。
197 4
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
|
5月前
|
Linux iOS开发 MacOS
【chat-gpt问答记录】python虚拟环境venv的简介及使用
【chat-gpt问答记录】python虚拟环境venv的简介及使用
62 2
|
1月前
|
程序员 PHP Python
Python3 简介
【10月更文挑战第8天】Python3 简介。
26 4
|
1月前
|
存储 关系型数据库 数据库
轻量级数据库的利器:Python 及其内置 SQLite 简介
轻量级数据库的利器:Python 及其内置 SQLite 简介
|
5月前
|
Python
|
2月前
|
数据采集 算法 数据处理
Python中的列表推导式:简介与应用
【9月更文挑战第14天】本文旨在介绍Python中一种强大且简洁的构造列表的方法——列表推导式。我们将从基础语法入手,通过实例演示其用法,并探讨在数据处理和算法优化中的应用价值。文章将不包含代码示例,而是专注于概念理解和应用场景的描述,以促进读者对列表推导式的深入认识。
66 3
|
2月前
|
JavaScript Java C语言
Python简介
Python简介。
20 4
|
4月前
|
数据采集 Java C语言
Python面向对象的高级动态可解释型脚本语言简介
Python是一种面向对象的高级动态可解释型脚本语言。
38 3
|
4月前
|
数据采集 Java C语言
Python:Python简介
Python是一种高级动态编程语言,以其简洁语法和丰富的库闻名。它免费开源,支持面向对象编程,自动内存管理,并可在多种平台运行。选择Python的原因包括易学性、移植性及解释性。Python广泛应用于爬虫、Web开发、科学计算等多个领域。学习路线包括基础语法、数据结构、函数、面向对象编程及特定领域的库学习。
54 1
Python:Python简介
|
4月前
|
开发工具 git Python
在python中的字面量简介以及调试和发布
【7月更文挑战第3天】本文介绍Python调试涉及统一str/unicode、pdb断点调试、依赖管理如`python3-devel`用于pycurl,发布流程含编译、删除源码、打包。常用内置魔法函数如`__iter__`、`__call__`。`chr()`和`ord()`处理Unicode与整数。字面量包括数字、浮点、复数和布尔值。
71 2