1.3 Python是什么

Python是什么,Python简介

Python 是荷兰人 Guido van Rossum (吉多·范罗苏姆,中国程序员称其为“龟叔”)在 1990 年初开发的一种解释型编程语言。

Python Logo
图1:Python 的标志(Logo)

Python 的诞生是极具戏曲性的,据 Guido 自述记载,Python 语言是在圣诞节期间为了打发无聊的时间而开发的,之所以会选择 Python 作为该编程语言的名字,是因为 Guido 是 Monty Python 戏剧团的忠实粉丝。

Python之父
图2:Python之父——吉多·范罗苏姆

Python 语言是在 ABC 语言的基础上发展而来,其设计的初衷是成为 ABC 语言的替代品。ABC 语言虽然是一款功能强大的高级语言,遗憾的是,由于 ABC 语言不开放的原因,导致它没有得到普及应用。基于这个考虑,Guido 在开发 Python 之初就决定将其开源。

Python 中不仅添加了许多 ABC 语言没有的功能,同时,还为其设计了各种丰富而强大的库,利用这些 Python 库,程序员可以把使用其它语言制作的各类模块(尤其是C语言和 C++)很轻松地“黏连”在一起,因此 Python 又常被称为“胶水”语言。

注意:这里所说的库和模块,简单地理解就是一个个的源文件,每个文件中都包含可实现各种功能的方法(也可称为函数)。

从整体上看,Python 语言最大的特点就是简单,该特点主要体现在以下两个方面:

  • Python 的语法非常简洁明了,即便是非软件专业的初学者,也很容易上手。
  • 和其它编程语言相比,实现同一个功能,Python 语言的实现代码往往是最短的。

网络上一直流传着“人生苦短,我用 Python”的说法,此言非虚!

看似 Python 是“不经意间”开发出来的,但丝毫不比其它编程语言差。事实也是如此,自 1991 年 Python 第一个公开发行版问世后,Python 从一名默默无闻的小卒开始成长,终于厚积薄发,一鸣惊人:

  • 2004 年,Python 的使用率呈线性增长,不断受到编程者的欢迎和喜爱;
  • 2010 年,Python 荣膺 TIOBE 『2010 年度最佳编程语言』桂冠;
  • 2017 年,IEEE Spectrum 发布的 『2017 年度编程语言』排行榜中,Python 位居第 1 位;
  • 2018 年,Python 斩获 TIOBE『2018 年度最佳编程语言』第 1 名;
  • 2020 年和 2021年,Python 更是连续两年摘得 TIOBE『年度最佳编程语』言桂冠。

直至现在(2022 年 7 月份),根据 TIOBE 排行榜的显示,Python 依然占据第 1 名的位置,并且市场份额仍在持续提升(如表 2 所示)。

2022年7月2021年7月编程语言市场份额变化
13最佳编程语言Python13.44%img +2.48%
21C13.13%img +1.50%
32Java11.59%img +0.40%
44C++10.00%img +1.98%
55C#5.65%img +0.82%
66Visual Basic4.97%img +0.47%
77JavaScript1.78%img -0.93%
89Assembly language1.65%img -0.76%
910SQL1.64%img +0.11%
1016Swift1.27%img +0.20%
118PHP1.20%img -1.38%
1213Go1.14%img -0.03%
1311Classic Visual Basic1.07%img -0.32%
1420Delphi/Object Pascal1.06%img +0.21%
1517Ruby0.99%img +0.04%
1621Objective-C0.94%img +0.17%
1718Perl0.78%img -0.12%
1814Fortran0.76%img -0.36%
1912R0.76%img -0.57%
2019MATLAB0.73%img -0.15%

由于人工智能、大数据等行业的发展,使得 Python 近几年增姿迅猛,甚至把 C 语言、C++ 和 Java 甩在身后 ,成为编程语言排行榜冠军。

最后,我们不妨再看一下 Python 历年来的市场份额变化曲线(浅蓝色曲线表示 Python)。

python占据的市场份额图
图3:Python 历年来市场份额变化曲线(点击查看详情)

可以看出,Python 已然站在风口之上。

.net/uploads/allimg/220804/9-220P4114453152.jpg))

可以看出,Python 已然站在风口之上。

错过了 C/C++ 的 PC 时代,又错过了 Java 的互联网和智能手机时代,你还想错过 Python 的人工智能和大数据时代吗?Python 正位于软件产业的第四次风口之上,把握好风口,你就能飞起来。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/477489.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

几个常用的控件(2)

目录 一、单选按钮Radiobutton和RadioButtonList 1、Radiobutton控件 (1)button控制方式 (2)Radiobutton控制方式 2、RadiobuttonList控件 二、列表框ListBox和下拉列表DropdownList 1、ListBox 2、DropdownList 三、面板…

macOS 通过 MacPorts 正确安装 MySQL 同时解决无法连接问题

如果你通过 sudo port install 命令正常安装了 MySQL,再通过 sudo port load 命令启动了 MySQL Server,此刻却发现使用 Navicat 之类的 GUI 软件无法连接,始终返回无法连接到 127.0.0.1 服务器。这是一个小坑,因为他默认使用了 So…

(day 15)JavaScript学习笔记(对象3)

概述 这是我的学习笔记,记录了JavaScript的学习过程。在写博客的时候我会尽量详尽的记录每个知识点。如果你完全没接触过JavaScript,那么这一系列的学习笔记可能会对你有所帮助。 今天继续学习对象,主要是Object.create()、原型链、修改原型指…

IPv6介绍

IPv6(互联网协议版本6)是用于互联网的最新网络层通信协议,旨在解决IPv4地址耗尽的问题,并提供了多项改进。IPv6于1998年由互联网工程任务组(IETF)标准化,作为IPv4的后继者。下面是IPv6的一些详细…

Linux - 应用层HTTPS、传输层TCP/IP模型中典型协议解析

目录 应用层:自定制协议实例 HTTP协议首行头部空行正文http服务器的搭建 HTTPS协议 传输层UDP协议TCP协议 应用层: 应用层负责应用程序之间的沟通—程序员自己定义数据的组织格式 应用层协议:如何将多个数据对象组织成为一个二进制数据串进行…

【文末附gpt升级4.0方案】英特尔AI PC的局限性是什么

为什么要推出英特尔AI PC? 英特尔AI PC的推出无疑为AIGC(生成式人工智能)的未来发展开启了一扇新的大门。这种新型的计算机平台,通过集成先进的硬件技术和优化的软件算法,为AIGC提供了更为强大和高效的支持&#xff0…

【探讨】基于卷积神经网络深度学习模型的光场显微三维粒子空间分布重建

光场显微粒子图像测速技术通过单光场相机即可实现微尺度三维速度场的测量,但单光场相机角度信息有限,导致粒子重建的轴向分辨率低、重建速度慢。基于此,提出一种基于卷积神经网络深度学习模型的光场显微粒子三维空间分布重建方法,…

说说你对webpack的理解?解决了什么问题?

文章目录 一、背景二、问题三、是什么参考文献 一、背景 Webpack 最初的目标是实现前端项目的模块化,旨在更高效地管理和维护项目中的每一个资源 模块化 最早的时候,我们会通过文件划分的形式实现模块化,也就是将每个功能及其相关状态数据各…

深入理解:蓝绿部署与金丝雀部署

深入理解:蓝绿部署与金丝雀部署 深入理解:蓝绿部署与金丝雀部署蓝绿部署(Blue-Green Deployment)原理优缺点适用场景 金丝雀部署(Canary Deployment)原理优缺点适用场景 总结 深入理解:蓝绿部署…

便捷安全的移动支付方式:扫码登录与支付全面解析

随着移动支付的普及和便利性,扫码登录与支付作为一种快捷安全的支付方式,在各行各业得到了广泛应用。本文将深入探讨扫码登录与支付的原理、优势以及使用场景,帮助读者更好地了解这一便捷的移动支付方式。 ## 扫码登录与支付的原理 扫码登录…

MNN Session 之 CPU 算子(七)

系列文章目录 MNN createFromBuffer(一) MNN createRuntime(二) MNN createSession 之 Schedule(三) MNN createSession 之创建流水线后端(四) MNN Session 之维度计算(五…

Java 程序设计 4 数学函数、字符、字符串

数学函数 Math是final类,在java.lang.Math中,所有数学函数都是静态方法。 Math类中定义了常用的 数学常数 PI : 3.14159265358979323846E : 2.7182818284590452354 方法: 三角函数:sin, cos, tan, asin, acos, atan,toRadians,toD…

mysql分页查询多用GitCode平台

目录 一、在GitCode平台AI搜索结果(这个更优) 二、在百度搜索输入“mysql Java分页查询”的输出结果: 三、推荐的文章 四、GitCode的使用 1)如搜索jdk11可以直接下载jdk11的包 2)搜索开源项目 3)如搜…

爬虫分析-基于Python的空气质量数据分析与实践

概要 本篇文章利用了Python爬虫技术对空气质量网站的数据进行获取,获取之后把数据生成CSV格式的文件,然后再存入数据库方便保存。再从之前24小时的AQI(空气质量指数)的平均值中进行分析,把数据取出来后,对数据进行数据…

大数据分析-基于Python的电影票房信息数据的爬取及分析

概要 现如今,人民群众对物质生活水平的要求已不再局限于衣食住行,对于精神文化有了更多的需求。电影在我国越来越受欢迎,电影业的发展越来越迅猛,为了充分利用互联网技术的发展,掌握电影业的态势,对信息进行…

进程的终止

进程的退出(main函数的退出) main函数的返回值叫做进程的退出码,该退出码表示进程执行的情况。例如:一个函数返回一个值时,我们要知道函数的执行情况,可以去看函数的返回值。 例子: 1 #include…

Redis相关操作高阶篇--集群搭建

Redis相关操作大全一篇全搞定-CSDN博客 Redis集群 是一个由多个主从节点群组成的分布式服务器群,它具有复制、高可用和分片特性。Redis集群不需要seninel哨兵也能完成节点移除和故障转移的功能。需要将每个节点 设置成集群模式,这种集群模式没有中心节…

c++的学习之路:2、入门(1)

一、 C关键字 c的关键字要比c语言要多31个足足有63个,这里我只是了解了下每个有啥作用,具体使用方法以及更多的知识将在后续学习中,慢慢扩展使用,下方表格就是c的63个关键字 asmdoifreturntryautodoubleinlinetypedefdynamic_ca…

LeetCode题练习与总结:接雨水

一、题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:上面是由数组 [0,1,0,2,1,0,1,3…

【MySQL】3.1MySQL索引的介绍

目录 一、索引的概念 数据库索引 索引的作用 索引的副作用 索引创建的原则(应用场景) 适合建立索引 二、索引的分类和创建 1.普通索引 创建普通索引 1.1直接创建 1.2修改表结构的方式创建普通索引 1.3创建表时创建普通索引 2.唯一索引 2.1…