编程新手必看!从零起步掌握Python的终极指南,Python简介(1)

1、Python语言的诞生

Python的作者,Guido von Rossum(吉多·范·罗苏姆,中国Python程序员都叫他 龟叔),荷兰人。1982年,龟叔从阿姆斯特丹大学获得了数学和计算机硕士学位。然而,尽管他算得上是一位数学家,但他更加享受计算机带来的乐趣。用他的话说,虽然拥有数学和计算机双料资质,他总趋向于做计算机相关的工作,并热衷于做任何和编程相关的事情。
1989年,为了打发圣诞节假期,龟叔开始写Python语言的编译器。Python这个名字,来自龟叔所挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。龟叔作为一个语言设计爱好者,已经有过设计语言的尝试。这一次,也不过是一次纯粹的hacking行为。1991年,Python的第一个公开发行版(版本0.9.0)正式发布。
Python的设计理念强调代码的可读性和简洁性,这使得Python成为一种非常适合初学者学习的编程语言。同时,Python还具有丰富的库和框架,使得它在Web开发、数据科学、人工智能等领域得到了广泛应用。随着时间的推移,Python已经成为世界上最流行的编程语言之一。

2、Python发展

1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python已经具有了 :类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。最初的Python完全由龟叔本人开发。Python得到龟叔同事的欢迎。他们迅速的反馈使用意见,并参与到Python的改进。龟叔和一些同事构成Python的核心团队。他们将自己大部分的业余时间用于hack Python。随后,Python拓 展到研究所之外。Python将许多机器层面上的细节隐藏,交给编译器处理,并凸显出逻辑层面的编程思考。Python程 序员可以花更多的时间用于思考程序的逻辑,而不是具体的实现细节。这一特征吸引了广大的程序员。Python开始流行。

3、Python 简介

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。
Python 是交互式语言: 这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码。
Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
Python 是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。

4、Python 发展历史

Python 是由 Guido van Rossum 在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的。
Python自1991年首次发布以来,经历了多个版本的迭代和改进。
初始阶段:Python的设计哲学强调代码的可读性和简洁的语法,这一特点从最初就决定了Python的发展方向。在1994年,Python 1.0版本发布,引入了lambda、map、filter和reduce等新功能。尽管这个版本在当时并没有得到广泛的接受,但它为后来的发展奠定了基础。
发展阶段:经过六年半的时间,Python 2.0在2000年10月发布,这个版本对语言进行了大量的改进和扩展,标志着Python进入了一个新的发展阶段。随着时间的推移,Python社区逐渐壮大,大量的第三方库和框架的出现,使得Python在多个领域得到了广泛应用。
现代阶段:到了2008年,Python的发展进入了一个新的里程碑,Python 3.0发布,它在设计上更加注重了 Unicode 的支持、更好的可读性和一致性。Python 3的推出解决了Python 2中存在的一些问题,但也导致了两个版本之间的兼容性问题。尽管如此,Python 3的推出被视为Python语言现代化的重要一步。
总的来说,Python的发展历史是一段不断进化和完善的过程,它的成功不仅仅在于其语言特性,还在于它强大的社区支持和广泛的应用场景。

5、Python 优点

1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。
2.易于阅读:Python代码定义的更清晰。
3.易于维护:Python的成功在于它的源代码是相当容易维护的。
4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。
5.互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。
6.可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。
7.可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。
8.数据库:Python提供所有主要的商业数据库的接口。
9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。
10.可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。

6、Python语言缺点

Python语言非常完善,没有明显的短板和缺点,唯一的缺点就是执行效率慢,这个是解释型语言所通有的,同时这个缺点也将被计算机越来越强大的性能所弥补。

7、Python运用在哪些领域?

Web开发:Python的框架如Django和Flask等被广泛用于构建网站和网络应用。这些框架提供了便捷的路由、模板和数据库操作等功能,使得快速开发复杂的Web应用成为可能。
数据科学:Python在数据科学领域非常流行,其高级库如SciPy、NumPy和Pandas等,为数据分析、处理和可视化提供了强大支持。
机器学习与人工智能:Python的TensorFlow、Keras和PyTorch等库和框架,是AI研究和开发的重要工具,支持深度学习、自然语言处理等高级功能。
自动化脚本:Python以其简洁明了的语法,成为编写自动化脚本的首选语言,用于日常任务和系统管理。
嵌入式系统:Python也可用于嵌入式系统开发,例如使用MicroPython或CircuitPython这样的变种来控制硬件设备。
游戏开发:虽然不是游戏开发的主流语言,但Python仍然可以用于游戏原型制作和脚本编写,PyGame库就提供了这样的功能。
科学计算:Python的高级库使其成为科学计算的理想选择,广泛应用于科研工作。
教育:由于其易于学习的特质,Python常被用作编程教育的入门语言。
金融行业:在金融行业,Python用于量化交易、风险管理和市场分析等方面。
互联网爬虫:Python的BeautifulSoup和Scrapy等库,使得网络数据抓取变得简单高效。
总的来说,Python的广泛应用得益于其易读性、易学性和丰富的第三方库支持。无论是初学者还是专业开发者,Python都提供了强大的工具和框架,以满足不同领域的开发需求。

8、用Python开发的公司、机构和网站

1、谷歌:Google App Engine、http://code.Google.com、Google earth、谷歌爬虫、Google广告等项目都在大量使用Python开发
2、CIA:美国中情局网站就是用Python开发的
3、NASA:美国航天局(NASA)大量使用Python进行数据分析和运算。美国宇航局从1994年起把python作为主要开发语言。
4、YouTube:世界上最大的视频网站YouTube就是Python开发的。
5、Dropbox:美国最大的在线云存储网站,全部用Python实现,每天网站处理10亿个文件的上传和下载。
6、Instagram:美国最大的图片分享社交网站,每天超过3千万张照片被分享,全部用Python开发。
7、Facebook:大量的基础库均通过Python实现的。
8、Redhat:世界上最流行的Linux发新版本中的yum包管理工具就是用Python开发的
9、豆瓣:公司几乎所有的业务均是通过Python开发的
10、知乎:国内最大的问答社区,通过Python开发(Quora)
11、春雨医生:国内知名的在线医疗网站是用Python开发的
除上面之外,还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝、土豆、新浪、果壳等公司都在使用Python完成各种各样的任务。

9、Python开发的游戏

最著名的:魔兽世界,坦克世界,星战前夜,文明帝国4,战地风云2
网易的全部自研手游,比如阴阳师,客户端服务端都是 python。

10、python 图标

在这里插入图片描述

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

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

相关文章

内存管理--柔性数组

本次讲的是,柔性数组,如果哪位小博客想要了解的更多,可以登录下面这个网站,了解详细内容 C语言结构体里的成员数组和指针 | 酷 壳 - CoolShellhttps://coolshell.cn/articles/11377.html 我们就听说过数组,听说过柔性数…

Excel求解二元一次方程

背景:如果想求解二元一次方程,常规方法就是联立方程求出一个未知数,然后带入任意一个等式。那么在excel里面应该怎么解决呢? 总所周知,大学里面会学矩阵行列式,二元一次方程其实就是一个简单的矩阵行列式。…

006 高并发内存池_PageCache设计

​🌈个人主页:Fan_558 🔥 系列专栏:高并发内存池 🌹关注我💪🏻带你学更多知识 文章目录 前言文章重点一、回顾PageCache页缓存结构二、PageCache结构设计三、完善申请内存函数小结 前言 本文将…

聊一聊电子邮件?

电子邮件是什么? 电子邮件是一种基于客户/服务器架构的应用。功能是实现人与人之间的交流。直到现在,电子邮件依然是当前因特网 注意:基于客户/服务器方式和基于B/S架构不一样!客户/服务器表示的范围更广,当基于客户…

Linux环境jdk、git、maven、MySQL和redis的安装和配置

这里整理了在Linux上如何安装和配置jdk、git、maven、MySQL和redis,主要用于在Linux上部署Java项目 文章中博主使用了一个叫FinalShell远程连接软件进行上传,如果没有类似的工具也可以直接通过yum命令行下载包 博主使用的Linux服务器为centos7&#xf…

2024最新版Android studio安装入门教程(非常详细)

目录 JDK安装与配置 一、下载JDK 二、JDK安装 三、JDK的环境配置 四、JDK的配置验证 Android studio安装 Android studio连接手机真机调试(以华为鸿蒙为例) 一、新建一个android项目 二、进入项目面板 三、配置Android Studio 四、安装手机驱…

【JavaSE】初识线程,线程与进程的区别

文章目录 ✍线程是什么?✍线程和进程的区别✍线程的创建1.继承 Thread 类2.实现Runnable接口3.匿名内部类4.匿名内部类创建 Runnable ⼦类对象5.lambda 表达式创建 Runnable ⼦类对象 ✍线程是什么? ⼀个线程就是⼀个 “执行流”. 每个线程之间都可以按…

BigInteger的应用

这里写目录标题 例题BigInteger常用方法关于BigInteger初始化为nullcompareTo()方法 : 返回一个int型数据(1 大于; 0 等于 ; -1 小于) 例题 import java.math.BigInteger; import java.util.*; public class Main{public static void main(String[] args) {BigInteger n BigIn…

android 消息提醒

1.创建 MyBackgroundService.java 继承 Service public class MyBackgroundService extends Service {Overridepublic void onCreate() {super.onCreate();Log.i("业务服务", "开起业务服务");//调用服务后在页面手机上创建一个通知消息。if (android.os…

TS的基础

TS Typed JavaScript at Any Scale. 它强调了 TypeScript 的两个最重要的特性——类型系统、适用于任何规模。 我们知道,JavaScript 是一门非常灵活的编程语言, 它没有类型约束,一个变量可能初始化时是字符串,过一会儿又被赋值为…

如何用 C++ 在 10 行内写出八皇后?

在编程世界中,有时挑战在于以最简洁的方式表达复杂的逻辑。八皇后问题就是这样一道经典难题,它要求在88的棋盘上放置8个皇后,使得任意两个皇后之间都不能位于同一行、同一列或同一斜线上。虽然这个问题可以通过多种算法解决,包括递…

Scala介绍与环境搭建

Scala环境搭建与介绍 一、Scala环境搭建 1、环境准备与下载 2、验证Scala 3、IDEA新建项目,配置Scala,运行Hello world 二、Scala介绍 1、Scala 简介 2、Scala 概述 一、Scala环境搭建 1、环境准备与下载 JDK1.8 Java Downloads | Oracle 下载需求版本…

代码随想录|Day29|贪心04|860.柠檬水找零、406.根据身高重建队列、452.用最少数量的箭引爆气球

860.柠檬水找零 我们维护三种金额的数量:five,ten,twenty 有如下三种情况: 账单是5:five 1,无需找零账单是10:ten 1,找零一张5元(five - 1)账单是20&#x…

Eclipse EMF教程(上)

What every Eclipse developer should know about EMF 翻译自:https://eclipsesource.com/blogs/tutorials/emf-tutorial/ 本教程是对EMF的介绍,解释了EMF的基础知识。我们首先向您展示如何基于EMF构建一个非常简单的以数据为中心的应用程序&#xff0c…

MES_ENT_STD

生产执行系统(企业标准版)MES_ENT_STD ERP_ENT_STD_59438.ieqq.ent-CSDN博客 OAMS_ENT_STD-CSDN博客

分类预测 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积长短期记忆网络多输入分类预测

分类预测 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积长短期记忆网络多输入分类预测 目录 分类预测 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积长短期记忆网络多输入分类预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 基本介绍 MATLAB实现BO-CNN-LSTM贝叶斯优化卷积长短期记…

主干网络篇 | 利用RT-DETR模型主干HGNet去替换YOLOv8的主干

前言:Hello大家好,我是小哥谈。众所周知,实时目标检测(Real-Time Object Detection)一直被YOLO系列检测器统治着,YOLO版本更是炒到了v9,前段时间百度飞桨的PaddleDetection团队发布了一个名为RT-DETR的检测器,宣告其推翻了YOLO对实时检测领域统治。论文标题很直接:《D…

WPF上使用MaterialDesign框架---下载与配置

一、介绍: Material Design语言的一些重要功能包括 系统字体Roboto的升级版本 ,同时颜色更鲜艳,动画效果更突出。杜拉特还简要谈到了新框架的一些变化。谷歌的想法是让谷歌平台上的开发者掌握这个新框架,从而让所有应用就有统一的…

Python 常用内置库 time库、random库、turtle库

文章目录 一、time库二、random库三、turtle库1. 绘制正方形2. 使用海龟对象绘制六边形3. 绘制多个起点相同大小不同起点的五角星4. 绘制多个图形和添加文字 提示:以下是本篇文章正文内容,下面案例可供参考 一、time库 time是最基础的时间处理库&#…

CAJViewer7.3 下载地址及安装教程

CAJViewer是中国学术期刊(CAJ)全文数据库的专用阅读软件。CAJViewer是中国知识资源总库(CNKI)开发的一款软件,旨在方便用户在线阅读和下载CAJ数据库中的学术论文、期刊和会议论文等文献资源。 CAJViewer具有直观的界面…