Python从入门到实战(一):初识Python与基础语法

📅 2026/7/2 12:00:30 👁️ 阅读次数 📝 编程学习
Python从入门到实战(一):初识Python与基础语法

一、认识 Python

1. Python 简介

Python是一种高级、解释型、通用型的编程语言。它由荷兰计算机科学家吉多·范罗苏姆(Guido van Rossum)于1989年底开始设计,并于1991年发布了第一个公开发行版。Python的设计哲学强调代码的可读性,其核心原则是用简洁的语法实现清晰的逻辑结构,这使得无论是小型脚本还是大型企业级应用的开发,Python都能保持高效

Python的字面意思是 "巨蟒"。然而,这一名称并非源于爬行动物,而是因为创始人吉多·范罗苏姆是英国20世纪70年代著名电视喜剧《蒙提·派森的飞行马戏团》的狂热爱好者。为了给这个新语言起一个独特且略带神秘感的名字,他选择了 "Python"


2. Python 发展历史与应用领域

  • 1989年:Guido van Rossum在圣诞节期间开始编写 Python 的编译器

  • 1991年:Python 0.9.0 发布,具备了类(class)、函数(function)和核心数据类型

  • 2000年:Python 2.0 发布,引入了垃圾回收机制和列表推导式,标志着 Python 进入广泛应用阶段

  • 2008年:Python 3.0发布。这是一个具有里程碑意义但并不向后兼容的版本,旨在修复 Python 2 中的设计缺陷与冗余

  • 2020年:Python 2 官方正式停止维护,全球开发生态全面转向Python 3

Python凭借其强大的生态系统,在众多领域得到了极其广泛的应用:

  • 数据科学与大数据分析:用于数据清洗、统计分析和可视化

  • 人工智能与机器学习:构建深度学习模型与算法框架

  • Web开发:利用 Django、Flask 等框架快速构建后端服务

  • 自动化运维与脚本编写:替代传统 Shell 脚本,提升系统管理效率

  • 网络爬虫:进行高效的数据采集与分析

二、Python 语言特点

1. Python的主要特点

Python作为一种现代高级编程语言,其核心设计理念与技术特性主要体现在以下几个方面:

  • 语法简洁:Python去除了传统编程语言中复杂的语句结束符(如分号)和大括号,改用严格的缩进来控制代码块的层次结构。这种设计不仅降低了代码的冗余度,还从底层强化了代码的可读性与统一性

  • 多范式编程支持:它不限制开发者的编程范式,同时支持面向过程面向对象以及函数式编程。开发者可以根据业务场景的复杂度,自由选择或融合不同的编程范式

  • 庞大的生态:Python内置了功能丰富的标准库(涵盖网络通信、文件I/O、文本处理等)。同时,全球开发者社区为其贡献了数以百万计的第三方库,形成了一个覆盖几乎所有技术领域的生态网络

  • 可移植性:Python 代码在编译时首先转化为平台无关的字节码。只要目标操作系统安装了对应的 Python 解释器,代码即可直接运行,具备极强的平台适应能力


2. 编译型语言与解释型语言

在计算机科学中,人类编写的高级语言代码必须转换为机器能够理解的机器码(二进制指令)。根据转换时机与机制的不同,编程语言主要分为编译型解释型两类:

编译型语言(如 C、C++、Go)解释型语言(如 Python、JavaScript)
转换机制在程序执行前,通过编译器将所有源代码一次性翻译成特定平台的机器码文件在程序运行过程中,通过解释器将源代码逐行或逐块翻译成机器码并立即执行
执行效率高。运行期间无需再进行翻译工作,直接由CPU执行机器码相对较低。运行时存在翻译的开销
开发调试慢。代码修改后需要重新经历完整的编译、链接过程快。修改后可直接运行,支持交互式调试
跨平台较弱。编译后的二进制文件通常绑定于特定的操作系统与硬件架构极强。代码保持纯文本状态,由各平台专属的解释器负责落地执行

Python 作为典型的解释型语言,虽然在纯粹的运算速度上无法与编译型语言相比,但其带来的跨平台灵活性和高开发效率,使其在互联网时代的敏捷开发中占据了核心地位


3. Python的优缺点

全面客观地评价一门语言,需要审视其在工程实践中的利弊得失:

优点

  1. 开发效率:简洁的语法和强大的库支持,使得实现相同功能所需的代码量通常只有 C++ 或 Java 的几分之一,大幅缩短了项目的交付周期

  2. 可读性与维护性:强制缩进与接近自然语言的语法,降低了团队协作中的代码理解成本,有利于后期系统的演进与维护

  3. 完善的社区:在遇到技术瓶颈时,开发者可以轻易找到成熟的解决方案或开源插件

缺点

  1. 运行速度:由于动态类型检查和解释执行的机制,其计算密集型任务的性能弱于编译型语言

  2. 代码加密困难:作为解释型语言,Python 分发的多为明文脚本或易被反编译的字节码,在纯商业机密软件的保护上存在天然劣势

  3. 全局解释器锁的限制:在官方标准的 CPython 解释器中,由于 GIL 的存在,多线程程序无法真正利用多核 CPU 进行并行计算(通常需要通过多进程来绕过此限制)


4. 为什么 AI 领域广泛使用

人工智能(尤其是机器学习与深度学习)涉及大量的矩阵运算与数值计算,对性能要求极高。然而,高性能的底层(如 C/C++)开发成本巨大。Python 之所以能在这场博弈中脱颖而出,主要源于其 "胶水语言" 特性:

  • 架构分层:诸如 NumPy、TensorFlow、PyTorch 等 AI 核心库,其底层涉及大规模数学运算的部分全部使用 C 或 C++ 编写,以确保极致的执行速度。而 Python 则作为高层接口,负责逻辑调用与数据流转

  • 降低算法门槛:AI研究的核心在于数学模型与算法逻辑。Python 极简的语法让数学家、数据科学家能够将全部精力聚焦于模型本身,而无需分散精力去处理诸如指针申请、内存释放、硬件兼容等复杂的系统级底层细节

这种 "底层优化性能,上层提升效率" 的架构设计,最终奠定了 Python 在 AI 领域的统治地位

三、Python 版本介绍

1. Python 2 与 Python 3

在Python的发展史上,Python 2.x 与 Python 3.x 的交替并非平滑的过渡,而是一次深刻的架构变革。这一过程由于彻底放弃了向后兼容性,而引发了巨大的争议

核心设计分歧

随着 Python 2 的广泛应用,早期设计中的一些历史包袱逐渐显现,例如字符编码混淆(Str与Unicode的混乱)、整数除法的隐式转换、以及部分核心库设计的冗余。为了让 Python 成为一门更纯粹、更具现代性的语言,创始人吉多·范罗苏姆决定在 2008 年发布Python 3.0

然而,Python 3.0不向后兼容 Python 2。这意味着成千上万在 Python 2 环境下稳定运行的商业系统、第三方库和工程代码,直接无法在 Python 3 解释器上运行

社区生态的分裂

这一决策在当时被众多企业级用户和开发者视为一种 "背刺"。对于拥有庞大历史代码库的企业而言,全面升级到 Python 3 意味着需要投入巨大的研发人力和测试成本去重构代码,而这些重构在短期内并不能为业务直接带来新增价值

这种强烈的抵触情绪导致了全球 Python 社区长达十余年的生态分裂:

  • 大量企业和开源项目选择坚守 Python 2.7

  • Python 官方原本计划在 2015 年彻底停止维护 Python 2,但迫于生态迁移进展极其缓慢的现实压力,最终不得不将 Python 2 的生命周期延长至2020年1月1日

直至 2020 年官方正式切断对 Python 2 的所有技术支持,且诸如 NumPy、Pandas 等头部第三方库全面宣布停止支持 Python 2 后,这场长达12年的新旧版本拉锯战才落下帷幕。当前,所有新工程项目及学术研究必须且只能基于 Python 3 进行开发


2. 查看 Python 版本

在系统开发环境配置完成后,通常需要验证当前环境默认调用的 Python 版本。开发者可以通过操作系统自带的命令行终端执行以下指令:

# 验证默认的 Python 版本 python --version # 或者使用缩写参数 python -V

在某些同时存在 Python 2 和 Python 3 的复杂系统环境中,直接输入 python 可能会指向系统自带的 Python 2。为了精准调用 Python 3,需要使用专门的指令:

# 显式查看 Python 3 的版本 python3 --version

3. Python 解释器简介

Python 作为一门解释型语言,其源代码(.py 文件)无法直接被计算机 CPU 理解,必须通过Python解释器翻译成机器指令才能执行

通常所说的 "安装 Python",本质上就是在计算机中安装 Python 解释器以及相关的核心标准库。在长期的技术演进中,针对不同的运行平台和性能需求,业界发展出了多种不同的解释器实现:

  • CPython(官方标准实现):这是最核心、应用最广泛的解释器。它由 C 语言编写,是官方发布的标准版本。几乎所有第三方库的开发和测试都以此为基准

  • PyPy(高性能实时编译):采用 JIT(Just-In-Time,即时编译)技术。与 CPython 逐行解释执行不同,PyPy 会在运行时将热点代码编译成机器码,从而大幅度提升 Python 程序的执行效率,在计算密集型场景下性能提升尤为显著

  • Jython(Java平台实现):将 Python 代码编译成 Java 字节码,使其能够直接在 JVM 上运行。这种实现使得 Python 能够无缝调用 Java 的丰富类库

  • IronPython:将 Python 代码编译为公共中间语言,使其能够运行在微软的 .NET 框架上,方便与 C# 等语言进行交互

对于初学者及绝大多数商业应用而言,CPython 是唯一的默认选择。后续所有语法特性与标准库行为,均以 CPython 解释器为准

四、开发环境搭建

高效的开发离不开完备的工具链。编写 Python 程序通常需要两个核心组件:Python 解释器集成开发环境(用于编写、调试和管理代码)。本节将介绍如何在主流操作系统上搭建标准的 Python 开发环境


1. Python 下载与安装

  1. 获取安装包:访问 Python 官方网站,进入 Downloads 页面。系统通常会自动识别当前操作系统,推荐下载最新的稳定版本(Stable Release,如 Python 3.11 或更高版本)

  2. 运行安装程序:双击打开下载的安装包

  3. 配置环境变量:在安装界面的底部,务必勾选 "Add python.exe to PATH"(将 Python 添加到系统环境变量)。若忽略此步骤,系统的命令行终端将无法直接识别 python 命令

  4. 完成安装:选择 "Install Now"(立即安装),等待进度条结束即可

验证安装:安装完成后,打开系统的终端或命令提示符(CMD),输入 python --version。若正确显示版本号,则表明解释器已成功安装并配置到系统中


2. PyCharm下载安装

集成开发环境是用于提供 程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。 集成了代码编写功能、分析功能、编译功能、调试功能等多种功能

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

Pycharm 目前已经没有专业版了,现在的叫做完整版,完整版中包含:付费功能 + 免费功能,付费功能可以免费试用 30 天,到期不付费的话,软件依然可以打开,并且免费的功能也都能正常使用,所以此处推荐下载完整版


3. 创建第一个Python项目

安装完 PyCharm 后,可以通过以下步骤初始化一个开发项目:

  1. 新建项目:启动 PyCharm,在欢迎界面点击 "New Project"

  2. 设置项目路径:在 "Location" 中,选择一个纯英文路径作为该项目的存放目录

  3. 配置环境关联:在 "Interpreter"(解释器)设置中,选择 "Custom Environment" 或 "Existing Interpreter",指向此前安装好的 Python 官方解释器路径

  4. 生成项目:点击右下角的 "Create"按钮,PyCharm 将自动初始化项目结构

  5. 新建文件:在项目左侧的目录树中,右键点击项目根目录,选择New -> Python File,输入文件名,系统会自动生成一个空白文件


4. PyCharm 常用快捷键

功能描述快捷键
执行当前脚本Ctrl + Shift + F10
再次运行上次的脚本Shift + F10
单行注释 / 取消注释Ctrl + /
代码格式化(对齐与规范化)Ctrl + Alt + L
全局文件或文本搜索Double Shift(连按两次)
复制当前行到下一行Ctrl + D
删除当前整行Ctrl + Y

五、Python 程序的运行方式

根据开发阶段与调试需求的不同,Python 提供了三种运行模式。理解其运行机制与适用场景,能够帮助开发者在编写与测试代码时选择最高效的路径


1. 命令行模式

命令行模式又称交互式模式。在操作系统的终端中直接输入 python 或 python3 命令并回车,即可进入 Python 交互式解析环境。其显著特征是出现提示符 >>>

在该模式下,解释器采用REPL(Read-Eval-Print Loop,读取-求值-打印-循环)机制工作:

  • 开发者输入单行或数行代码后按下回车键,解释器立即读取并计算该段代码;

  • 随后将运行结果直接输出在屏幕上;

  • 最后等待下一次输入

适用场景:由于其 "随写随得" 的特性,交互式模式非常适合用于验证单行代码的语法、测试特定的函数行为、或者临时充当高精度计算器


2. 脚本模式

随着程序复杂度的提升,交互式模式由于无法保存代码而不再适用。此时,开发者需要将所有的 Python 源代码编写在一个纯文本文件中,并将其保存为以 .py 为扩展名的文件(即 Python 脚本)

运行脚本时,需要在终端中调用 Python 解释器,并将脚本文件的路径作为参数传递给它:

python script_name.py

在脚本模式下,解释器会从文件的第一行开始,按照从上到下的顺序流式执行所有代码,直到文件末尾。在运行过程中,除非代码中显式调用了输出函数,否则中间的计算结果不会打印到屏幕上

适用场景:适用于生产环境的部署、自动化运维脚本的执行、以及所有需要持久化保存和重复运行的正式软件项目


3. IDE 运行模式

IDE 运行模式本质上是对脚本模式的封装与自动化延伸。在 PyCharm 或 VS Code 等专用集成开发环境中,开发者不需要手动打开终端并输入复杂的命令行指令

只需点击编辑器界面上的运行按钮或触发相应的快捷键,IDE 会在后台自动完成以下工作:

  1. 识别当前活动的 .py

  2. 检索当前项目配置的 Python 解释器路径;

  3. 在内置的终端窗口中自动拼接并执行类似于 python path/to/your_file.py 的命令;

  4. 将程序的标准输出与错误信息重定向至 IDE 底部的控制台面板

这是日常工程开发中最核心的运行方式。它将代码编写、静态检查、版本控制以及运行调试无缝连接在统一的界面中

六、第一个 Python 程序

编写并成功运行 "Hello World" 程序是学习任何编程语言的传统起点。虽然程序简单,但它能够帮助开发者确认整个开发链条(从编辑器编写到解释器执行)已完全打通


1. Hello World

在创建的 .py 文件中,输入以下单行代码:

print("Hello, World!")

在 PyCharm 中点击右键并选择 Run (或使用快捷键 Ctrl + Shift + F10),底部的控制台面板将输出以下内容:


2. print 函数简介

print 是 Python 的内置函数,其核心功能是将传递给它的数据输出到标准输出设备(在开发阶段通常指控制台屏幕)

基本语法与特性:

  • 必需的括号:在 Python 3 中,print 必须带有圆括号,这与 Python 2 的语法有本质区别

  • 数据类型兼容性:它不仅可以输出用双引号或单引号包裹的字符串,还可以直接输出数字布尔值以及复杂的数据结构

  • 多参数输出:print 函数允许同时接收多个参数,参数之间用逗号,分隔。在输出时,Python 会默认使用空格将这些参数拼接起来。例如:

    print("今年是", 2026, "年")

3. 程序执行流程

当我们运行程序时,Python 解释器在后台并不是直接将纯文本代码交给 CPU 执行,而是经历了一个精密的分层处理过程。

其核心执行流程主要分为以下三个阶段:

阶段一:词法与语法分析

解释器首先从上到下读取 .py 源码文件,进行词法切片,并检查代码是否符合 Python 的语法规范。如果代码中存在括号未闭合、拼写错误等,解释器会立即中断并抛出语法错误

阶段二:编译生成字节码

在语法检查通过后,Cpython 解释器会将高级语言源码编译成一种计算机无法直接运行、但对 Python 虚拟机友好的中间代码,称为字节码

  • 字节码文件的扩展名为 .pyc

  • 在日常开发中,这些文件通常会被自动缓存在项目目录下的 __pycache__ 文件夹中,其目的是为了在下次运行时跳过编译阶段,从而提高程序的启动速度

阶段三:虚拟机解释执行

最后,Python 的核心引擎——Python虚拟机会接管这些 .pyc 字节码。PVM 充当了字节码与底层硬件之间的桥梁,它会逐条将字节码翻译成当前操作系统和 CPU 能够识别的机器指令,并驱动硬件交出最终的运行结果

这种 "源码 -> 字节码 -> 机器码" 的执行架构,既保证了 Python 作为高级语言的跨平台移植性,又通过字节码缓存机制尽可能地优化了执行效率

七、Python基础语法

在理解了 Python 程序的运行机制后,我们需要掌握其最核心的底层语法构建块。本节将核心语法元素归纳为三大板块进行概述


1. 数据的基础表达

在程序中,数据的存储与表现形式是开展一切逻辑运算的前提

字面量

指在代码中以固定、直观的形式表现出来的值,即 "所见即所得" 的数据。Python 中的常见字面量包括:

  • 整数:如 10, -5, 0

  • 浮点数:如 3.14, -0.01

  • 字符串:用单引号或双引号包裹的文本,如 "Python", 'Hello'

  • 布尔值:仅有 True 和 False 两个值,用于逻辑判断

变量

变量是用于存储数据值的内存空间标识。与 C、Java 等强类型语言不同,Python 是一种动态类型语言,变量在使用前不需要显式声明其数据类型。解释器会在运行时根据赋值符号右侧的字面量自动推导变量的类型

# 变量定义与赋值 user_age = 20 user_name = "张三"

常量

常量是指在程序运行生命周期内其值不应被修改的量。需要明确的是,Python 在语法机制上并未提供真正的常量关键字。为了解决这一问题,Python 社区制定了约定俗成的规范:强制将变量名全部大写来表示这是一个常量。这是一种显式的协定,而非语言层面的硬性限制

# 约定俗成的常量定义 PI = 3.1415926535 MAX_CONNECTIONS = 100

2. 命名规范

编写规范的代码需要对程序中的各类实体(如变量、函数、类等)进行命名

标识符:即程序中由开发者自定义的名称。Python 对标识符的命名设定了严谨的规则

  1. 只能由字母(包含英文字母及中文字符,但不推荐使用中文)、数字和下划线组成

  2. 不能以数字开头(例如 1_value 是非法标识符)

  3. 严格区分大小写(SystemValue 与 systemvalue 将被视为两个完全独立的实体)

  4. 不能占用 Python 内置的关键字

Python 关键字:关键字是 Python 语言内部保留的、具有特定语法功能的单词。开发者不能将它们用作自定义标识符。以下是 Python 中部分核心关键字的分类概览:

分类核心关键字列表
逻辑与流程控制if, elif, else, for, while, break, continue, return
布尔与空值True, False, None
异常处理try, except, finally, raise, assert
定义与命名空间def, class, import, from, as, lambda

常见命名风格:为了维持开源社区代码的一致性,官方在 PEP 8 样式指南中推荐了以下两类核心命名风格:

  • 蛇形命名法:所有字母小写,单词之间通过下划线连接。适用于变量名、函数名、模块名。例如:total_price、get_user_data()

  • 大驼峰命名法:每个单词的首字母均大写,不使用下划线。仅适用于类名。例如:HttpResponse、DataProcessor


3. 注释与文件编码声明

良好的代码结构需要完备的辅助信息来保证其可读性与跨平台兼容性

注释:注释用于对业务逻辑进行解释说明。Python 解释器在编译代码时会自动忽略注释内容,因此它不会对程序运行效率产生任何影响

# 1. 单行注释:使用井号开头,通常独立成行或写在代码行末尾 current_year = 2026 """ 2. 多行注释(文档字符串): 使用三对双引号或单引号包裹。 通常用于对整个模块、类或复杂函数进行详细的功能性文字描述。 """

文件编码声明:在旧版本的 Python(如 Python 2)中,默认编码不支持中文,必须在文件首行添加编码声明。虽然 Python 3 已经将UTF-8确立为默认的源码文件编码,完美支持了中文字符的解析,但在某些追求绝对严谨或需要向后兼容的工程项目中,开发者仍习惯在脚本文件的第一行加入显式的编码声明:

# -*- coding: utf-8 -*-

总结

本篇主要带完成了 Python 的入门准备工作,从 Python 的发展历史、语言特点、应用领域,到开发环境的搭建、程序运行方式以及最基础的语法规范,对 Python 有了一个整体的认识。虽然目前还没有正式开始编写复杂的程序,但这些基础知识是后续学习 Python 的重要前提,也是每一位 Python 开发者都必须掌握的内容

从下一篇开始,我们将真正进入 Python 的语法学习,重点介绍 Python 的数据类型、字符串、数据类型转换、运算符、进制以及输入输出等基础内容。学完这些知识后,你将能够编写一些简单的 Python 程序,并为后续学习流程控制、函数、数据结构以及面向对象编程打下坚实的基础