第一讲 初识Python

news2024/9/20 20:44:22

Python简介

Python(英式发音:/ˈpaɪθən/;美式发音:/ˈpaɪθɑːn/)是由荷兰人吉多·范罗苏姆(Guido von Rossum)发明的一种编程语言,是目前世界上最受欢迎和拥有最多用户群体的编程语言。Python 强调代码的可读性和语法的简洁性,相较于 C 或 Java,Python 让使用者能够用更少的代码表达自己的意图。下面是几个权威的编程语言排行榜给出的 Python 语言的排名,其中第1张图由 TIOBE Index 提供,第3张图由 IEEE Spectrum 提供。值得一提的是第2张图,它展示了编程语言在全球最大代码托管平台 GitHub 上受欢迎的程度,最近的四年时间 Python 语言都处于冠军的位置。

 

 

Python的编年史

  1. 1989年12月:吉多·范罗苏姆决心开发一个新的脚本语言及其解释器来打发无聊的圣诞节。这种语言将作为 ABC 语言的继承者,主要用来替代 Unix shell 和 C 语言实现系统管理。由于吉多本人是 BBC 电视剧《Monty Python's Flying Circus》的忠实粉丝,所以他选择了 Python 这个词作为新语言的名字。
  2. 1991年02月:吉多·范罗苏姆在 alt.sources 新闻组上发布了 Python 解释器的最初代码,标记为版本0.9.0。
  3. 1994年01月:Python 1.0发布,梦开始的地方。
  4. 2000年10月:Python 2.0发布,Python 的整个开发过程更加透明,生态圈开始慢慢形成。
  5. 2008年12月:Python 3.0发布,引入了诸多现代编程语言的新特性,但并不完全向下兼容。
  6. 2011年04月:pip 首次发布,Python 语言有了自己的包管理工具。
  7. 2018年07月:吉多·范罗苏姆宣布从“终身仁慈独裁者”(开源项目社区出现争议时拥有最终决定权的人)的职位上“永久休假”。
  8. 2020年01月:在 Python 2和 Python 3共存了11年之后,官方停止了对 Python 2的更新和维护,希望用户尽快切换到 Python 3。

说明:大多数软件的版本号一般分为三段,形如A.B.C,其中A表示大版本号,当软件整体重写升级或出现不向后兼容的改变时,才会增加A;B表示功能更新,出现新功能时增加B;C表示小的改动(例如:修复了某个Bug),只要有修改就增加C。

Python的优缺点

Python 语言的优点很多,简单为大家列出几点。

  1. 简单优雅,跟其他很多编程语言相比,Python 更容易上手
  2. 能用更少的代码做更多的事情,提升开发效率
  3. 开放源代码,拥有强大的社区和生态圈
  4. 能够做的事情非常多,有极强的适应性。
  5. 胶水语言,能够黏合其他语言开发的东西。
  6. 解释型语言,更容易跨平台,能够在多种操作系统上运行。

Python 最主要的缺点是执行效率低(解释型语言的通病),如果更看重代码的执行效率,C、C++ 或 Go 可能是你更好的选择。

Python的应用领域

目前 Python 在桌面应用开发、Web 服务器开发、云基础设施开发、网络数据采集、数据分析、量化交易、机器学习、自动化等领域都有用武之地。很多一线互联网公司都使用 Python 来开发各类支撑系统、实现自动化测试和自动化运维;还有很多公司用 Python 进行大数据处理,从数据采集、数据清洗到最终的数据呈现,Python 都提供了完美的解决方案,帮助企业从数据中发现商业价值;此外,做量化交易尤其是高频交易的操盘手,都倾向于使用 Python 语言来接入交易系统并编写交易策略。

安装Python环境

工欲善其事,必先利其器。想要开始你的 Python 编程之旅,首先得在计算机上安装 Python 环境,简单的说就是安装运行 Python 程序需要的 Python 解释器。我们推荐大家安装官方的 Python 3解释器,它是用 C 语言编写的,我们通常也称之为 CPython,它应该是你目前最好的选择。首先,我们需要从官方网站下载页面找到并下载适合自己操作系统的 Python 3安装程序,如下图所示。

Windows环境

下面我们以 Windows 11为例,讲解如何在 Windows 操作系统上安装 Python 环境。双击运行从官网下载的安装程序,会打开一个安装向导,画面如下所示。首先,一定要记得勾选“Add python.exe to PATH”选项,它会帮助我们将 Python 解释器添加到 Windows 系统的 PATH 环境变量中(不理解没关系,勾上就对了);其次,“Use admin privileges when installing py.exe”是为了在安装过程中获得管理员权限,建议勾选。然后,我们选择“Customize Installation”,使用自定义安装的模式,这是专业人士的选择,而你就(假装)是那个专业人士,不建议使用“Install Now”(默认安装)。

接下来,安装向导会提示你勾选需要的“Optional Features”(可选特性),这里咱们可以直接全选。值得一提的是其中的第2项,它是 Python 的包管理工具 pip,可以帮助我们安装三方库和三方工具,所以一定要记得勾选它,然后点击“Next”进入下一环节。

接下来是对“Advanced Options”(高级选项)的选择,这里我们建议大家只勾选“Add Python to environment variables”和“Precompile standard library”这两个选项,前者会帮助我们自动配置好环境变量,后者会预编译标准库(生成.pyc文件),这样在使用时就无需临时编译了。还是那句话,不理解没关系,勾上就对了。下面的“Customize install location”(自定义安装路径)强烈建议修改为自定义的路径,这个路径中不应该包含中文、空格或其他特殊字符,注意这一点会为你减少很多不必要的麻烦。设置完成后,点击“Install”开始安装。

安装成功会出现如下图所示的画面,安装成功的关键词是“successful”,如果安装失败,这里的单词会变成“failed”。

安装完成后可以打开 Windows 的“命令行提示符”或 PowerShell,然后输入python --versionpython -V来检查安装是否成功,这个命令是查看 Python 解释器的版本号。如果看到如下所示的画面,那么恭喜你,Python 环境已经安装成功了。这里我们建议再检查一下 Python 的包管理工具 pip 是否可用,对应的命令是pip --versionpip -V

说明:如果安装过程报错或提示安装失败,很有可能是你的 Windows 系统缺失了一些动态链接库文件或缺少必要的构建工具导致的。可以在微软官网下载“Visual Studio 2022 生成工具”进行修复,如下图所示。如果不方便在微软官网下载的,也可以使用下面的百度云盘链接来获取修复工具,链接: 百度网盘 请输入提取码 提取码: cjs3。

上面下载的“Visual Studio 2022 生成工具”需要联网才能运行,运行后会出现如下图所示的画面,大家可以参考下图勾选对应的选项进行修复。修复过程需要联网下载对应的软件包,这个过程可能会比较耗时间,修复成功后可能会要求重启你的操作系统。

macOS环境

macOS 安装 Python 环境相较于 Windows 系统更为简单,我们从官方下载的安装包是一个pkg文件,双击运行之后不断的点击“继续”就安装成功了,几乎不用做任何的设置和勾选,如下图所示。

安装完成后,可以在 macOS 的“终端”工具中输入python3 --version命令来检查是否安装成功,注意这里的命令是python3不是python!!!然后我们再检查一下包管理工具,输入命令pip3 --version,如下图所示。

总结

总结下这一课学到的东西:

  1. Python 语言很强大,可以做很多的事情,也值得我们去学习。
  2. 要使用 Python语言,首先得安装 Python 环境,也就是运行 Python 程序所需的 Python 解释器。
  3. Windows 系统可以在命令提示符或 PowerShell 中输入python --version检查 Python 解释器的版本;macOS 系统可以在终端中输入python3 --version检查 Python 解释器的版本。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Colab】Colab使用教程(跑本地文件)

文章目录前言一、上传本地文件二、Colaboratory使用1、连接2、调整文件3、运行文件三、未来可期前言 首先,自己想办法注册谷歌账号,本文不讲。 Colaboratory网址:https://colab.research.google.com/ 谷歌云端硬盘:https://dri…

【软件测试二】开发模型和测试模型,BUG概念篇

目录 1.软件的生命周期 2.瀑布模型 3.螺旋模型 4.增量,迭代 5.敏捷---scrum 1. 敏捷宣言 2.角色 6. 软件测试v模型 7.软件测试w模型 8.软件测试的生命周期 9.如何描述一个BUG 10.如何定义BUG的级别 11.BUG的生命周期 12.产生争执怎么办 1.软件的生命周期…

26岁转行网络安全,成功上岸安全开发!

前言 我是去年 9 月 22 日才正式学习网络安全的,之前在国营单位工作了 4 年,在长沙一个月工资只有 5000 块,而且看不到任何晋升的希望,如果想要往上走,那背后就一定要有关系才行。 而且国营单位的气氛是你干的多了&a…

【Fluent UDF】浮点溢出错误后初始化对UDF运行的影响、停止正在进行的计算后重载UDF再计算会产生的效果

一、初始化对UDF运行的影响 初始化只会初始化网格上的物理数据、在UDF中常用的实际时间flow-time(CURRENT_TIME)、迭代步数N_ITER、UDM中的数据(其实也就是网格物理数据)。 初始化之后,UDF程序中的静态变量不会再初始…

【牛客刷题专栏】0x22:JZ21 调整数组顺序使奇数位于偶数前面(一)(C语言编程题)

前言 个人推荐在牛客网刷题(点击可以跳转),它登陆后会保存刷题记录进度,重新登录时写过的题目代码不会丢失。个人刷题练习系列专栏:个人CSDN牛客刷题专栏。 题目来自:牛客/题库 / 在线编程 / 剑指offer: 目录 前言问…

Java阶段二Day03

Java阶段二Day03 文章目录 Java阶段二Day03V5BirdBootApplicationClientHandlerHttpServletRequest V6BirdBootApplicationClientHandlerHttpServletRequest V7BirdBootApplicationClientHandlerHttpServletRequestHttpServletResponse V8BirdBootApplicationClientHandlerHttp…

【Unity入门】14.值类型和引用类型

【Unity入门】值类型和引用类型 大家好,我是Lampard~~ 欢迎来到Unity入门系列博客,所学知识来自B站阿发老师~感谢 (一)值类型 (1)C#的值类型 1. 布尔类型(bool) 2. 字符类型&#x…

【软考备战·希赛网每日一练】2023年4月18日

文章目录 一、今日成绩二、错题总结第一题第二题第三题 三、知识查缺 题目及解析来源:2023年04月18日软件设计师每日一练 一、今日成绩 二、错题总结 第一题 解析: MTTF:平均无故障时间 MTTR:平均故障修复时间 可用性/可靠性MTTF…

一文入门Typrscript和Vue3

一、TypeScript快速上手 在TypeScript专栏已经详细介绍过TypeScript,在此总结一下TypeScript和Vue3的基础知识。 1. 初识 TypeScript 1.1 TypeScript 的介绍 TypeScript是一种由微软开发的开源、跨平台的编程语言。它是JavaScript的超集,最终会被编译为JavaScrip…

Python轻量级Web框架Flask(9)——图书馆项目

1、项目要求: 创建一个项目,用来说明出版社,书籍和作者的关系。作者和书籍之间的关系:1对多(一本书由一个作者完成,一本书可以有多个创作者)出版社和书籍之间的关系:多对多&#xf…

day15 消息队列

目录 消息队列 消息队列的使用 发送消息 消息的接收 消息队列的控制 消息队列 概念: 消息队列是system V IPC对象的一种; 消息队列有消息队列ID来唯一标识; 消息队列就是一个消息的列表。用户可以在消息队列中添加消息、读取消息等&a…

有介质的高斯定理详细证明(电偶极子模型)以及例题讲解

目录 静电场中的电介质 电极化强度的引入 电偶极子模型的计算 电介质极化过程 极化电荷引入 推导 各向同性和线性的电介质 例题 静电场中的电介质 电介质与导体的区别:所有的粒子被束缚在原子核周围(限制空间) 电介质分为两种 1.无…

OldWang带你了解MySQL(十)

文章目录 🔥MySQL事务🔥使用事务🔥事务的并发问题🔥MySQL的用户管理🔥MySQL分页查询 🔥MySQL事务 事务简介 事务是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完…

【网络小知识】当我在浏览器url输入文本后的解析流程/http协议对比https协议

当我们在地址栏输入信息之后,我们会得到浏览器给我们一个返回的信息,那么这个信息怎么出来的?且看下文~~~ 目录 ⭐一、浏览器url解析流程⭐二、http协议对比https协议 ⭐一、浏览器url解析流程 在浏览器地址栏输入文本后,比如 “…

window.postMessage()接收不到信息(失效)

问题描述 按照正常的代码逻辑,应该是这个样子,通过iframe打开子窗口,能够正常通信。 // 接收端(父窗口) window.onmessage function (e) {// 逻辑代码 }// 发送端(子窗口) window.parent.po…

第一次参加CSDN周赛,这体验很难说···

👨‍💻个人主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 本文章收录于专栏 【CSDN周赛】 本篇文章目录🌏前言🌏一、勾股数🌸题目描述🌸题解&…

Android Activity 了解

前言 : Android 系统的四大组件分别是 1 活动 (Activity) 2 服务(Service) 3 广播接收器(Broadcast Receiver) 4 内容提供器 (Content Provider) 其中活动是所有安卓应用程序的…

rust闭包(Closure)

闭包(Closure) 闭包在现代化的编程语言中普遍存在。闭包是一种匿名函数,它可以赋值给变量也可以作为参数传递给其它函数,不同于函数的是,它允许捕获调用者作用域中的值。Rust 闭包在形式上借鉴了 Smalltalk 和 Ruby 语言,与函数最…

无聊小知识.04 以下代码会输出什么?

1、前言 今天同事给我看了一段代码,然后这段简单的代码,我却陷入了沉思。 2、代码 String string ""; try {string "123";return string; } finally {string "234"; } 这段代码,string最终是“123”还是…

【SpringSecurity】学习笔记(一)

学习笔记一、SpringSecurity 简介二、创建测试项目2.1、引入依赖2.2、测试三、SpringSecurity基本原理3.1、过滤器链3.1.1、FilterSecurityInterceptor3.1.2、ExceptionTranslationFilter3.1.3、UsernamePasswordAuthenticationFilter3.2、过滤器加载过程3.3、两个重要的接口3.…