【Python】初始Python

news2025/7/17 19:57:46

文章目录

  • 一. Python背景知识
    • 1. Python的起源
    • 2. Python的作用
    • 3. Python的优缺点
    • 4. Python的前景
  • 二. 搭建Python环境
    • 1. 安装Python
    • 2. 安装 PyCharm

一. Python背景知识

1. Python的起源

Python祖师爷吉多 · 范罗苏姆(Guido van Rossum)是一个荷兰程序员(人称龟叔,名字前三个字母是 Gui)。1982 年从阿姆斯特丹大学取得数学和计算机科学硕士学位后,他曾在多家科研机构工作,2005 ~ 2012 年他在 Google 工作了 7 年,之后又离职加入 Dropbox。这位现年 66 岁(2022 年)的荷兰程序员在他 34 岁(1989 年)的圣诞节假期中设计出了风靡世界的程序语言 Python。
在这里插入图片描述

虽然 Python 的原意是蟒蛇,但创始人显然不是想表明这种语言可以变成白娘子跟你在西湖相遇,关于 Python 的命名,龟叔自己(在 1996 年时)的说法是这样的:

「六年前的 1989 年 12 月,我在寻找一门『课余』编程项目来打发圣诞节前后的假期时光。假期里我的办公室关门,但我有一台家用电脑。我决定为当时我正构思的一个新的脚本语言写一个解释器,它是 ABC 语言的继承,对 UNIX / C 程序员会有吸引力。作为一个略微有些奇怪想法的人和《蒙提 · 派森的飞行马戏团》的狂热爱好者,我选择了 Python 作为项目的标题。」

那么问题来了,《蒙提 · 派森的飞行马戏团》是啥?

《蒙提 · 派森的飞行马戏团》(Monty Python’s Flying Circus)是英国的喜剧团体蒙提 · 派森创作的系列超现实主义电视喜剧,1969 年首次以电视短剧的形式在 BBC 电视频道播出,共推出了 4 季共 45 集节目。随后喜剧团体蒙提 · 派森的影响力从电视扩展到舞台剧、电影、音乐专辑、音乐剧等,被外国媒体认为「在喜剧上的影响力相当于披头士在音乐方面的影响」。他们六个人就长这样:
在这里插入图片描述

那么问题又来了,《蒙提 · 派森的飞行马戏团》这个电视剧的名字是怎么来的?

事实上,喜剧团体蒙提 · 派森取名的唯一评判标准就是听起来是不是很滑稽。一种说法是在这个名字定下来之前他们尝试过很多奇怪的名字,比如「猫头鹰伸开翅膀的时候」「蟾蜍的升降力矩」「一匹马」「勺子和桶」「回顾凡士林」「秃鹫」等等,直到 BBC 受不了了,表示「《蒙提 · 派森的飞行马戏团》这个名字很滑稽!而且我们把它公布出去了你们不许改了!!」名字才定下来。

另一个成员说叫蒙提 · 派森(Monty Python)是喜剧团体的成员 Eric Idle 的主意,「Monty」这个名字是为了讽刺二战传奇将军蒙哥马利勋爵(Field Marshal Lord Montgomery)。他们要为这个名字找到一个听上去比较圆滑的姓,因此选择了「Python」。这个方案提出后,BBC 对于「Monty Python」这个名字的看法是:「对于一个低俗娱乐群体而言真是个完美的名字」。

现在我们知道了,Python以流行文化命名的程序语言,虽然名称来源和本意都不是大蟒蛇,但公司还是采用了两条盘在一起的蛇作为 logo,不得不说这两条缠在一起的蛇真的好像是在交配……
在这里插入图片描述

2. Python的作用

经历了多年的发展,Python 目前是一个应用场景非常广泛的编程语言:

  • 科学计算&数据分析
  • Web 开发(搭建网站)
  • 自动化运维
  • 人工智能
  • 爬虫程序
  • 自动化测试

3. Python的优缺点

优点:

  • 语法言简意赅,容易上手
  • 功能强大,用途广泛
  • 生态丰富,具有海量的成熟第三方库
  • 因为Python是基于C语言写的,所以能够很方便地调用 C/C++ 编写的代码进行高性能/系统级操作

缺点:

  • 执行效率比较低
  • 对于多核心并发程序支持偏弱
  • 动态类型系统对于大型项目不太友好

4. Python的前景

当今网上很多信息把 Python 吹的天花乱坠,这其实有些吹过火了,Python 和其他的编程语言本质上并没有啥区别。并不存在某个场景是 “非得 Python 能做,其他语言做不了” 这样的情况。

在这里插入图片描述

虽然 Python 的应用场景很多,但是纯粹使用 Python 的岗位是比较少见的;大部分情况是把 Python 作为一个辅助性质的语言,在工作中,Python 更像
是一个工具,需要用到的时候随手拿起来就用,能够方便的解决不少问题。

二. 搭建Python环境

1. 安装Python

在搜索引擎中搜索 Python 关键字,在前几个结果中找到 Python 官网,如下图所示:
在这里插入图片描述

进入官网后,按下图步骤找到下载页面:
在这里插入图片描述

发现下载页面中有很多版本,我们下载最新的稳定版本即可:
在这里插入图片描述
载完成后,会得到一个 exe 的安装程序:
在这里插入图片描述
双击安装包,安装 Python,安装时要注意以下两点:

  • 记住 Python 的安装目录,后面会用到。
  • 勾选 “Add Python 3.10 to PATH” 这个选项,让它自动自动帮我们配置好所需的环境变量。
    在这里插入图片描述

安装完成后打开 Python 的安装目录看看,其中最关键的就是这个 python.exe 。后续运行 Python 程序,全靠这个 python.exe
在这里插入图片描述

如果直接双击这个 python.exe ,就会打开 Python 的交互式解释器(控制台程序),在这个交互式解释器中就可以输入 Python 代码了。

比如我们直接输入 print(‘hello world’) 这句代码,按下 enter 键,则打印出了 hello world 这样的结果:
在这里插入图片描述

2. 安装 PyCharm

虽然通过交互式解释器可以执行 Python 代码了,但是这样代码写起来并不方便。需要更专业的开发工具来编写 Python 代码。其中最主流的开发工具就是 PyCharm 和 VS Code 了,这里我们选择 PyCharm。

还是一样的搜索栏中输入 PyCharm 找到其官网,注意要认准 jetbrains.com 这个域名
在这里插入图片描述
PS:JetBrains 是捷克的一家互联网公司,主要的业务就是开发编程工具。像 Java的IDEA,C++的CLion,Python的PyCharm,Go的GoLand等等都是出于 JetBrains 之手。这些工具功能都非常强大,深受广大程序猿的喜爱,因此网友们也亲切的称呼这些开发工具为 “JB 全家桶”。

进入后直接点击中间的 DOWNLOAD 即可:
在这里插入图片描述

可以看到 PyCharm 有两个版本:专业版和社区版。专业版 相比于 社区版,功能要更丰富一些,但是专业版收费,社区版免费(显然要白嫖):
在这里插入图片描述
下载完成后,会得到一个 exe 程序:
在这里插入图片描述
双击安装包,自己安装即可。这里建议把这个选项勾上,这样在任意目录鼠标右键,就都可以直接用 PyCharm 打开目录了:
在这里插入图片描述
这个安装过程非常简单,一般只要不报错,就算安装成功。

使用 PyCharm 运行 hello world

打开安装好的 PyCharm ,创建一个新项目。注意,一般情况下,PyCharm 能够自动识别出 Python 解释器的位置。但是如果没有自动识别出来,
也没关系,我们按如下步骤选择即可:
在这里插入图片描述

右键左侧的项目目录, 选择 New -> Python File
在这里插入图片描述

填写文件名:
在这里插入图片描述

编写代码:
在这里插入图片描述

右键任意位置,选择 "Run ‘hello’ ",或者按ctrl + shift + F10,运行程序:
在这里插入图片描述

得到结果:
在这里插入图片描述

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

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

相关文章

简易的Python小游戏,上班可玩一天,零基础小白可练手

文章目录 一、第一次写Python小游戏二、对小游戏进行改进 1.对玩家进行提示2.提供多次机会给玩家3.每次答案应该是随机的 三、总结 一、第一次写Python小游戏 刚开始学习Python这门计算机语言,所以在网上找了一个非常简易的小游戏来进行模仿编写,目的…

【数据挖掘】聚类分析

聚类分析 Cluster Analysis 肝到爆炸呜呜呜 一、什么是聚类分析 关键词 1️⃣ 簇 Cluster:数据对象的集合,相同簇中的数据彼此相似,不同簇中的数据彼此相异。 2️⃣ 聚类分析 Cluster analysis:根据数据特征找到数据中的相似性…

Servlet | HttpServlet源码分析、web站点的欢迎页面

目录 一:HttpServlet源码分析 二:web站点的欢迎页面 一:HttpServlet源码分析 1、HttpServlet类是专门为HTTP协议准备的,比GenericServlet更加适合HTTP协议下的开发 HttpServlet在哪个包下? jakarta.servlet.http.Ht…

vue - - - - vite创建vue3项目(不使用TS)

vite创建vue3项目 vite官方文档 1. 使用指令创建项目 > npm create vite your-project-name > or > yarn create vite your-project-name此处演示使用npm,执行该指令时,遇到下述7.1所示报错。 Need to install the following packages(需…

asp.net+sqlserver婚纱影楼摄影管理系统C#

目录 1绪论 5 1.1 选题背景目的和意义 5 1.2研究现状 5 1.3 课题理由 5 2系统需求分析 7 2.1可行性分析 7 2.1.1 技术可行性 7 2.1.2 经济可行性 7 2.2.3 操作可行性 8 2.2系统架构 8 2.3 业务流程分析 9 3系统总体设计 10 3.1 系统物理环…

JavaSE——异常

目录 一、基本概念 1.1 什么是异常? 1.2 java提供的异常处理机制有什么作用? 1.3 java语言中异常以什么形式存在? 例1: 二、异常处理机制 2.1 所有Exception的直接子类都叫做编译时异常 2.2 所有的RuntimeException及子类都属于…

Spring面试

1. IOC (1)如何实现一个IOC容器 (2)IOC理解 (3)BeanFactory BeanFactory 是 Spring 框架的基础设施,面向 Spring 本身;ApplicationContext 面向使用 Spring 框架的开发者&#xff…

Zookeeper和Eureka的区别

Zookeeper: CP设计(强⼀致性),⽬标是⼀个分布式的协调系统,⽤于进⾏资源的统⼀管理。当节点crash后,需要进⾏leader的选举,在这个期间内,zk服务是不可⽤的。 eureka: AP设计(高可用&…

动态规划--(不同的子序列,编辑距离,两个字符串的删除)

代码随想录day56 动态规划模块 不同的子序列,编辑距离,两个字符串的删除 文章目录1.leetcode 115. 不同的子序列1.1思路及详细步骤1.2 代码示例2.leetcode 583. 两个字符串的删除操作2.1思路及详细步骤2.2 代码示例3.leetcode 72. 编辑距离3.1思路及详细步骤3.2 代码…

绝对最直白的MySQL MVCC机制总结,免费拿走

🍁 作者:知识浅谈,CSDN签约讲师,后端领域优质创作者,阿里云社区技术博主,热爱分享创作 💒 公众号:知识浅谈 📌 擅长领域:全栈工程师、爬虫、ACM算法 绝对最直…

项目实战 - tpshop商城项目环境搭建

一、环境部署准备 1、软件工具准备 1.1、Vmware虚拟机 1. 在本机上安装好Vmware虚拟机 2. 在虚拟机上安装并运行Linux系统 3. 注意: 实际工具中使用云服务器 1.2、远程连接工具 1. 在本机上安装好远程连接工具 (xshell / putty / FinalShell(推荐)) …

三种常见的特征选择方法

特征选择 特征选择是特征工程里的一个重要问题,其目标是寻找最优特征子集。特征选择能剔除不相关(irrelevant)或冗余(redundant )的特征,从而达到减少特征个数,提高模型精确度,减少运行时间的目的。并且常能听到“数据和特征决定…

k8s master 实现高可用

Kubernetes高可用master架构 k8s的高可用,主要是实现Master节点的高可用。那么我们看看各个组件是如何解决高可用的。 Kubelet、Kube-proxy:只工作在当前Node节点上,无需高可用。 etcd:etcd如果是放在集群内部的,在…

长文讲解Linux内核性能优化的思路和步骤

一.性能调优简介 1.为什么要进行性能调优? 1) 编写的新应用上线前在性能上无法满足需求,这个时候需要对系统进行性能调优 2) 应用系统在线上运行后随着系统数据量的不断增长、访问量的不断上升,系统的响应速度通常越…

js-学习链表

链表基础概念 链表和数组一样,可以用于存储一系列连续的元素。链表中的元素在内存中不必是连续的空间。链表的每一个元素有一个由一个存储元素本身的节点和一个指向下一个元素的引用组成(指针和连接)。 链表构成 数据指针 链表优点 1.内存空间不是必须连续的&a…

实践分享:30分钟在电脑端运行小程序

预计实现效果:在电脑桌面端实现小程序运行 技术实现:小程序容器技术实现(案例使用FinClip SDK) 技术的原理: 该 SDK 主要包括应用交互层、安全防护、网络通信控制和安全运行容器四个组件。 应用交互层:应用交互层是…

DBSCAN算法实现【超详细注释】

DBSCAN 算法步骤 设置每个对象为未访问 随机选择一个未访问的点ppp,标记ppp表示访问 如果p的半径为nnn的邻域中至少存在MinPts个对象 我们就创建一个新的簇,并将ppp加入ccc设N 是ppp邻域中对象的集合对在NNN中的每个点p′pp′ 如果p′pp′是未访问的 标记p′pp′…

Matlab:数值积分与符号计算

Matlab数值积分定积分的数值求解实现自适应积分算法梯形积分法累计梯形积分多重定积分的数值求解实现符号计算符号对象及其运算符号微积分符号极限符号导数求不定积分符号方程求解数值积分 数值积分,用于求定积分的近似值。在数值分析中,数值积分是计算定…

SQL Server简介

SQL Server是微软的一款关系型数据库。某些平台吹得天花烂坠,今天第一次在自己的项目中使用了下,感觉不是那么好,特别是SQL语句的支持度还是很欠缺,如limit等都不支持,还有特别单双引号都是需要特别注意的,下面是SQL S…

从0到1CTFer成长之路——1git(全网最详细)

1.1.2.1 git 泄露 (1) 常规git泄露 安装docker sudo apt-get update sudo apt-get install docker 安装容器 docker pull ubuntu:18.04 然后发现请求超时 我们需要阿里云的镜像加速器 我们按照要求配置文件 没有/etc/docker 就自己创建 sudo mkdir -p /etc/docker 然后写入…