【大模型2609·Python基础·01】计算机底层基础与Python开发环境全景搭建

专栏导读:本篇作为《尚硅谷大模型2609》体系第一模块开篇,系统梳理计算机硬件组成、程序执行机制、机器语言到高级语言的演进路线,深入剖析编译型与解释型语言的核心差异。随后手把手带领完成从 Python 解释器安装到工业级 IDE PyCharm 的环境全景搭建。


第 1 章 必备基础知识

1.1 计算机组成

1.1.1 硬件

计算机硬件主要由五个部分组成,分别是:运算器、控制器、存储器、输⼊设备、输出设备。

image-20251204144529594

1.1.2 软件

计算机软件主要分为:系统软件、应⽤软件。

image-20251204144910447

类型 作用
系统软件 直接管理和控制计算机硬件的软件,为应⽤软件提供运⾏平台,它负责协调硬件资源(如内存、处理器)并提供通⽤服务,例如:⽂件管理、设备控制、任务调度。
应用软件 ⽤于执⾏特定任务的软件,满⾜⽤户的具体需求,如:⽂档编辑、数据分析、娱乐等,它依赖系统软件提供的资源和服务。

1.2 计算机语言

1.2.1 计算机语言、代码、程序

image-20251204145342959

1.2.2 计算机语⾔简史

第1代:机器语言

计算机问世的初期,⼈们只能通过『机器语⾔』(⼜称机器码)来操作计算机,所谓机器语⾔,就是 0 和 1 组成的⼆进制内容。⽽且在当时,录⼊和修改信息通常都需要:拨动开关、或插拔连线、或使⽤打孔纸带来输⼊指令。

image-20251204145601988

image-20260224110131240

  • 优点:机器可直接执行,速度最快;硬件直接控制
  • 缺点:二进制编写,人极难读写和维护;完全依赖硬件,无移植性。

例如:在 x86 的 CPU 架构下,使⽤机器码编写 1 + 1 的运算代码如下:

1
10110000 00000001 00000100 00000001

第2代:汇编语言

⽤机器语⾔编程,程序员很难理解每⼀条指令的含义,为了解决这个问题,『汇编语⾔』应运⽽⽣,它将机器语⾔中的⼆进制指令,转化为更容易记忆的助记符 (如 MOV 、 ADD 、 LOAD 等),从⽽让程序员能以近似“英⽂简写”的⽅式进⾏编程,简单说 就是:『汇编语⾔』是对『机器语⾔』的“⼈性化翻译”,汇编语⾔显著降低了编程的⻔槛,也为 后续⾼级语⾔的诞⽣,打下了基础。

  • 优点:比机器语言易读写;执行效率高;
  • 缺点:仍依赖特定CPU指令集;编程效率低;代码量大;

例如:在 x86 的 CPU 架构下,使⽤『汇编语⾔』编写 1 + 1 的运算代码如下:

1
2
mov al, 1 
add al, 1

⚠️注意:『汇编语⾔』需要翻译成『机器码』,才能交给 CPU 执⾏,因为 CPU 只认⼆进制指 令。

第3代:高级语言

相对『机器语⾔』和『汇编语⾔』⽽⾔,『⾼级语⾔』更接近⼈类的⾃然语⾔,它允许程序员使⽤ 英语来编写程序,并向程序员屏蔽了⼤部分的底层细节,语⾔中的符号和算式,也和⽇常的数学算 式差不多,它更容易被掌握,常⻅的『⾼级语⾔』有:C、C++、Java、PHP、Go、Rust、 JavaScript、Python 等。

  • 优点:接近自然语言,易学易用;代码简洁;硬件无关,移植性好;丰富的库和工具
  • 缺点:执行需编译/解释,效率较低;对硬件控制能力弱

例如:下⾯的 Python 代码,可以输出 “Hello, world!”

1
print("Hello, world!")

例如:下⾯的 Java 代码,可以输出 “Hello, world!”

1
2
3
4
5
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello, world!");
}
}

⚠️注意:计算机不能直接执⾏『⾼级语⾔』,同样需要将其转换为『机器语⾔』才能被计算机 执⾏。

1.2.3 编译型语⾔与解释型语⾔

对于⾼级语⾔来说,我们会根据其转换成⼆进制指令过程的不同,可将其分为:『编译型』和『解 释型』

编译型语⾔

将程序翻译成计算机能理解的⼆进制内容,并且通常会⽣成⼀个可执⾏⽂件,例如在 windows 系 统上⽣成的可执⾏⽂件是 .exe ⽂件,常⻅的『编译型』语⾔有:C、C++、Go、Rust 等。

image-20251204151118032

  • 优势:同⼀运⾏平台,代码只需编译⼀次,且执⾏效率⾼。
  • 劣势:跨平台性差,⼤型项⽬编译时间较⻓,开发效率略低。

解释型语⾔

将程序⼀句⼀句的翻译为:计算机可以执⾏的指令,整个过程通常不⽣成可执⾏⽂件,常⻅的解释型语⾔有:Python、Php、JavaScript 等。

image-20251204151222235

  • 优势:跨平台性好,⽆需编译,开发调试灵活⾼效。
  • 劣势:每次运⾏都需要解释,执⾏效率较低。

编译+解释混合型

Java 是典型的编译与解释混合型语言,这种设计是它“一次编写,到处运行”能力的关键。

简单概括它的执行过程:Java源码 (.java) → 编译 → 字节码 (.class) → 解释/即时编译 → 机器码执行

image-20251204160455002

有人说python也是编译+解释的混合型的?

  • Java 通过“先静态编译为字节码,再在JVM上解释/JIT编译执行”的混合模式,完美结合了编译型和解释型语言的优点,目标是平衡启动速度和运行性能。

  • Python是一门“先(隐式)编译为字节码,再由虚拟机解释执行”的语言。它没有JIT编译步骤,其“编译”主要服务于语法分析和生成中间格式,而非性能优化。其核心执行模型仍然是解释型的。虽然它确实经历了“编译”和“解释”两个阶段,但我们通常不称之为“混合型语言”,因为它缺乏关键的 运行时编译优化 环节。

    image-20260224092846190

特性 Java Python (CPython)
编译产出 显式生成 .class 字节码文件 隐式生成 .pyc 字节码文件(可缓存)
执行引擎 解释器 + JIT编译器(如HotSpot) 纯解释器(CPython标准实现)
性能核心 依赖JIT将热点字节码编译为优化后的机器码 依赖解释器直接执行字节码
“混合”含义 编译 + 解释 + 即时编译,旨在提升峰值性能 编译 + 解释,旨在实现跨平台和开发便利

结论:Python是高级语言,是解释型语言。

1.2.4 TIOBE排行

TIOBE 排行榜 是衡量编程语言流行度的一个长期、月度更新的指标。它由荷兰的 TIOBE 公司发布,始于2001年,已成为业界观察语言趋势的重要参考。https://www.tiobe.com/tiobe-index/

核心要义:它衡量的是“流行度”或“关注度”,而非“最好用”或“代码量最多”。 标题 “TIOBE Programming Community Index” 也点明了它反映的是 开发者社区的活跃度和关注度。

TIOBE 采用 自动化算法,主要数据来源于全球主流搜索引擎的查询结果。语言流行度与招聘需求、技术文章、教程数量高度相关,是开发者学习、企业技术选型的“风向标”之一。它衡量的是“讨论热度”,而非“实际代码行数”或“项目数量”。一门成熟语言可能仍在关键系统中大量运行,但讨论度低,排名就会靠后,而新闻事件、大型会议可能导致某个语言的搜索量短期激增。

image-20251204160830513

image-20260224093050508

1.3 Python语言概述

1.3.1 Python的起源

Python 的作者 Guido van Rossum 来⾃荷兰(国内爱称:⻳叔),1982年从阿姆斯特丹大学获得了数学和计算机硕士学位。他发现⽤: C、Fortran 等语⾔写程序太费劲,⽽ Shell 虽然轻松,但功能却很有限。1989 年圣诞节,⻳叔开始动⼿编写⼀种既能像 C 那样全⾯操控系统,⼜能像 Shell ⼀样好上⼿的解释器,并以他喜爱的喜剧 《Monty Python’s Flying Circus》(巨蟒剧团之飞翔的马戏团)为灵感,命名为“Python”。

Python 的设计哲学是“优雅、明确、简单”,Python 提倡:最好只有⼀种⽅法来做⼀件事,它的第⼀个公开版本于 1991 年问世,如今已成为全球最受欢迎的编程语⾔之⼀。

image-20251204162247375

1.3.2 Python的特点

优点:

image-20251204162345136

缺点:

image-20251204162435270

1.3.4 Python版本

Python有2个版本,Python2 和 Python3。

Python 3.x 是现在和未来主流的版本。相对于Python的早期版本是一个比较大的升级,且为了不带入过多的累赘, Python 3.0在设计的时候没有考虑向下兼容,因而许多早期Python版本设计的程序都无法在 Python 3.0上正常执行。但随着Python3使用越来越广泛,大部分新项目开始使用Python3,且大部分三方库已经支持Python3.x,Python3.x已经成为趋势。

  • Python 3.0发布于2008年

  • 2020年: Python 2 官⽅停⽌维护,Python 2.7被确定为最后一个 Python 2.x 版本。同时 Python 3.9 发布。

  • 2021年:Python 3.10 发布。

  • 2022年:Python 3.11 发布,平均性能提升 10%-60% 。

  • 2023年:Python 3.12 发布,进⼀步优化性能和类型提示。

  • 2024年:Python 3.13 发布。

  • 2025年:Python 3.14 发布。

  • 当前课程使用的版本是Python3.12.8

1.3.4 Python解释器

由于整个Python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写Python解释器来执行Python代码(当然难度很大)。事实上,确实存在多种Python解释器。

  • CPython

    • 当我们从Python官方网站下载并安装好Python 3.x后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

    • CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。

  • IPython

    • IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。
    • CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。
  • PyPy

    • PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。
  • Jython

    • Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
  • IronPython

  • IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

小结:Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。

第2章 搭建Python开发环境

2.1 安装Python

2.1.1 下载Python

Python官网地址:https://www.python.org/

image-20251204172028247

image-20251204172452763

  1. Installer(标准安装版)
  • 你就是一个Python程序员:想在自己的电脑上写代码、装库、做项目。你应该下载这个。通常包含完整的 Python 标准库、解释器以及一些辅助工具(如 pip 用于安装第三方库)等,安装完成后占用的磁盘空间相对较大。
  • 工作流程:Windows平台下载 .exe -> 运行安装 -> 在终端输入 python 或 pip 即可使用。
  1. Embeddable Package(可嵌入包)
  • 你是一个C++游戏引擎开发者:你想让用户能用Python写游戏逻辑脚本。你需要把Python运行时“埋”在你的游戏引擎里一起发布。它只包含最核心的 Python 解释器以及一些必要的基础组件,不包含完整的标准库,也不包含pip等工具,通常只有几兆。
  • 场景:你的应用程序内部会调用 embed/python.exe 来执行用户写的 .py 脚本。对最终用户来说,他们甚至不知道引擎里有个Python。

2.1.2 安装Python

  • 双击下载好的⽂件,开始安装(强烈建议以管理员身份运⾏)

image-20251204173618969

  • 选择自定义安装并勾选添加环境变量

image-20251204173639126

  • 直接next,保持默认选择

image-20251204173717718

  • 修改安装路径,其他保持默认,点击Install开始安装。

image-20251204173757081

  • 点击Disable python length limit(禁用系统的路径长度自动限制,以避免因路径过长而导致的错误),点击close,完成安装。

image-20251204174050865

  • 安装完成后检测。同时按下 Win键 和 R ,输入 cmd ,点击确定,进入命令提示符。

image-20251204174130582

  • 输入以下命令
1
python --version

image-20251204174209883

2.2 第一个Python程序

2.2.1 交互式命令行模式

(1)同时按下 Win键 和 R ,并输入 cmd ,进入命令提示符。

(2)在命令提示符中输入python,进入Python交互模式。

(3)输入print(“hello”),按下回车,控制台会打印hello。

image-20251205192224208

2.2.2 脚本模式

(1)在 D:根目录下新建一个文件,将其重命名为 Hello.py 。

(2)双击此文件,选择使用记事本打开,在其中写入print(“hello”),并保存。

(3)在资源管理器上方输入 cmd 并回车,就会打开命令提示符并进入当前路径。

(4)在命令提示符中输入python Hello.py执行程序。

image-20251205192946132

2.3 安装Pycharm

2.3.1 什么是IDE

集成开发环境(简称:IDE;英文名:Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等多种功能。

虽然我们也可以使用记事本编写代码,并通过命令行调用Python解释器来执行Python程序。但这样比较繁琐,会降低开发效率。而使用IDE后,很多工作可以交给IDE帮我们去做,让我们可以专注于代码的编写。

Python的IDE我们选择使用PyCharm。

2.3.2 下载Pycharm

PyCharm官方地址:https://www.jetbrains.com/pycharm/download

专业版可试用30天,社区版完全免费。

image-20251204175330813

新版本不叫专业版了,叫做统一版本(Unified Product)。适用30天之后,仍然可以打开,就是只能使用基础功能。之前专业版适用30天之后就打不开了,必须激活才能打开。

image-20251204175130145

2.3.3 安装Pycharm

(1)双击安装包进入安装。

(2)点击下一步。

image-20251204175601710

(3)修改安装目录,点击下一步。

image-20251204175622400

(4)酌情勾选安装选项,之后点击下一步。

image-20251204175904165

(5)点击安装。

image-20251204180012611

(6)完成安装

image-20251204180028214

2.3.4 注册Pycharm

第一步:先启动一下Pycharm,然后直接退出。

第二步:运行注册文件

2.4 Pycharm基础设置

image-20251205193434878

2.4.1 语言和地区设置(可选)

image-20251205193714132

2.4.2 外观主题(可选)

image-20251205194446307

2.4.3 文件编码(统一UTF-8)

image-20251205194220811

2.4.4 字体设置(可选)

image-20260128171807876

2.4.5 代码自动补全(不区分大小写)

image-20251205195608912

2.5 创建纯Python工程

  • 新建项目

image-20251205195631935

  • 选择项目路径、填写项目名称、选择解释器类型、确认python版本

image-20251205200018965

解释器类型说明:

  1. Project venv:当前项目的虚拟环境(这里选择它)

    • 在当前项目内安装的包/库只会在项目内有效,在项目目录下会有一个.venv目录。
  2. Base Conda:Anaconda环境

    • Anaconda是一个集成了大量python包的python环境,如果选择这个需要先在电脑内安装Anaconda。
  3. Custom environment:自定义环境

    • generate new(新建虚拟环境):表示为新项目基于你所选择虚拟环境中的python作为Base python生成一个虚拟环境,生成后放在其项目文件夹下的venv中,使用venv作为解释器。每一个项目安装的第三方库互不影响,具有隔离性。

    • Select existing(选择已配置好的虚拟环境):并不会在项目文件夹下产生项目本身的venv,所选择的虚拟环境中的所有已安装的第三方包都可以使用,而不用重新安装,但是项目之间没有隔离性。

2.6 在Pycharm中编写代码运行

  • 创建目录(便于管理)

image-20251205202453043

image-20251205202530758

  • 创建Python文件

image-20251205202604710

  • 命名Python文件

image-20251205201931506

  • 编写代码并运行

image-20251205202708558