第 1 章 初识 Python

1,026 阅读29分钟

1.1 Python 简介

自 1991 年首次发布以来,Python 始终以 “简洁、可读、实用” 为核心设计原则,逐步成长为全球最主流的编程语言之一。它的优势在于大幅降低编程门槛 —— 无论是零基础学习者入门,还是资深开发者构建复杂系统,都能通过 Python 高效解决问题。本节将从起源、特性、应用、优势四个维度展开,为你的 Python 学习之路奠定基础。

1.1.1 Python 的起源

1. 诞生背景

Python 由荷兰程序员 Guido van Rossum(业界尊称 “Python 之父”)于 1989 年圣诞节期间设计,当时他任职于荷兰国家数学和计算机科学研究所(CWI)。

彼时主流编程语言(如 C++、Pascal)存在明显局限:C++ 需繁琐的类型声明与内存管理,语法复杂度高;Pascal 功能单一,难以应对复杂任务。Guido 希望设计一门 “让开发者专注于问题逻辑,而非语言细节” 的语言,核心诉求是 “用更少代码实现更多功能”。

2. 名称由来

“Python” 并非源自数学概念 “蟒蛇”,而是 Guido 对英国喜剧团体《蒙提・派森的飞行马戏团》(Monty Python's Flying Circus)的致敬。这一命名恰恰体现了他的设计愿景:让语言既具备强大功能,又保持轻松灵活的风格。

3. 发展脉络

  • 1991 年:发布 Python 1.0 版本,首次引入类、垃圾回收、列表推导式等核心特性,确立 “简洁易用” 的基调;
  • 2000 年:Python 2.0 发布,完善面向对象支持(如支持 Unicode 编码),推动语言初步普及;
  • 2008 年:Python 3.0 发布,进行不兼容底层重构,解决字符串编码混乱、语法不一致等历史问题(详见 1.2 节);
  • 2020 年:Python 2 正式停止维护,不再提供安全更新与库支持,Python 3 成为唯一主流版本;
  • 至今:Python 3 持续迭代(如 3.11、3.13 版本),聚焦性能优化(如 JIT 编译)与功能增强,始终延续 “用户友好” 的核心理念。

📌 重点提示:Python 的诞生源于对 “繁琐编程体验” 的改进,核心是降低开发门槛。1991 年 1.0 版本奠定语言基础,2008 年 3.0 版本解决历史缺陷,这两个节点对理解 Python 的发展至关重要。

1.1.2 Python 的核心语言特性

Python 的特性围绕 “提升开发效率” 与 “增强代码可读性” 展开,具体可分为五类,每类特性都能直接改善你的编程体验:

1. 可读性优先

Python 是首个将 “代码可读性” 纳入设计核心的语言,核心机制是缩进标识代码块,而非传统语言的花括号({})。

  • 规范:同一代码块需保持一致缩进,官方推荐 4 个空格(避免使用 Tab 键,防止跨编辑器格式混乱);

  • 示例对比:

    # Python 代码:缩进直观,逻辑清晰
    age = 20
    if age >= 18:
        print("成年")  # 缩进表示属于 if 代码块
    else:
        print("未成年")  # 缩进表示属于 else 代码块
    
    // Java 代码:依赖花括号分隔
    int age = 20;
    if (age >= 18) {
        System.out.println("成年");  // 花括号内为 if 代码块
    } else {
        System.out.println("未成年");  // 花括号内为 else 代码块
    }
    
  • 优势:代码天然 “自文档化”,即使零基础读者也能快速理解逻辑,大幅降低团队协作成本。

2. 动态类型机制

Python 采用动态类型,即变量无需预先声明数据类型,解释器在运行时会根据赋值自动推断类型。

  • 示例:

    a = 10        # 解释器推断 a 为整数(int)
    print(type(a))  # 输出:<class 'int'>
    ​
    a = "Python"  # 重新赋值后,a 动态变为字符串(str)
    print(type(a))  # 输出:<class 'str'>
    ​
    a = 3.14      # 再次赋值,a 变为浮点数(float)
    print(type(a))  # 输出:<class 'float'>
    
  • 优势:减少代码冗余,无需 “声明类型却未使用” 的浪费;

  • 注意:动态类型可能导致运行时错误(如 10 + "Python" 会触发 TypeError)。大型项目中建议使用类型注解(详见 1.2.2 节)提升代码严谨性。

3. 多范式支持

Python 不绑定单一编程范式,支持面向对象、函数式、过程式三大主流风格,可根据场景灵活选择:

  • 面向对象编程(OOP):支持类、继承、多态、封装,适合构建复杂系统。示例:

    class Student:  # 定义类(封装属性与方法)
        def __init__(self, name, age):
            self.name = name  # 实例属性:存储学生姓名
            self.age = age    # 实例属性:存储学生年龄
        
        def study(self):      # 实例方法:定义学生的“学习”行为
            print(f"{self.name}正在学习 Python")
    ​
    # 创建实例并调用方法
    alice = Student("Alice", 18)
    alice.study()  # 输出:Alice正在学习 Python
    
  • 函数式编程:支持匿名函数(lambda)、高阶函数(map/filter/reduce),适合数据转换。示例:

    # 用 map 实现列表元素翻倍(函数式风格)
    numbers = [1, 2, 3]
    doubled = list(map(lambda x: x * 2, numbers))  # 结果:[2, 4, 6]
    print(doubled)
    

    新手初期无需深入函数式编程的细节,先掌握面向对象和过程式风格即可,后续章节会专门讲解函数式编程的应用场景与进阶用法。

  • 过程式编程:无需定义类或复杂函数,直接按步骤写脚本,适合简单自动化任务(如批量重命名文件)。示例:

    # 过程式风格:批量打印数字
    for i in range(1, 4):
        print(f"数字:{i}")
    # 输出:
    # 数字:1
    # 数字:2
    # 数字:3
    

4. 跨平台兼容

Python 程序依赖解释器运行,而解释器已在 Windows、macOS、Linux、Unix 等主流系统上实现统一接口。

  • 优势:Windows 上编写的脚本,无需修改代码,仅需在目标系统安装对应版本解释器即可运行;

  • 示例(跨平台读取文件)

    # 跨平台读取文本文件(无需调整路径或编码)
    with open("data.txt", "r", encoding="utf-8") as f:
        content = f.read()
    print("文件内容:", content)
    

5. “内置电池” 理念

Python 遵循 “Batteries Included”(内置电池)设计,标准库(安装后默认自带)覆盖绝大多数常用功能,无需额外安装。

  • 核心标准库示例
模块名功能领域常用操作
os操作系统交互创建文件夹(os.mkdir())、获取当前路径(os.getcwd()
datetime日期时间处理计算日期差(timedelta)、格式化时间(strftime()
socket网络通信创建 TCP 客户端 / 服务器
json数据格式解析解析 JSON 字符串(json.loads())、生成 JSON(json.dumps()
unittest单元测试编写测试用例(TestCase)、验证结果(assertEqual()
  • 优势:避免 “重复造轮子”,开发者可快速聚焦业务逻辑,无需从零实现基础功能。

📌 重点提示:Python 语法风格接近 “伪代码”(描述算法逻辑的非正式代码),不仅降低了入门难度,也让代码的调试与维护更高效。因此,Python 既是零基础学习者入门编程的理想选择,也是资深开发者提升效率的核心工具。

1.1.3 Python 的主要应用领域

Python 凭借简洁语法与丰富生态,在多个领域成为主流工具。以下为核心应用场景,每个场景均列出实际开发中最常用的工具:

1. 数据科学与人工智能(核心领域)

Python 是数据科学与 AI 的 “第一语言”,生态覆盖数据处理、可视化、模型训练全流程:

  • 数据处理:

    • NumPy:高效处理数值数组(如矩阵运算),是后续库的基础;
    • Pandas:处理结构化数据(如 Excel 表格、CSV 文件),支持筛选、分组、合并等操作;
  • 数据可视化:

    • Matplotlib:绘制基础图表(折线图、柱状图、散点图);
    • Seaborn:基于 Matplotlib 封装,专注统计可视化(如热力图、箱线图);
  • 人工智能:

    • Scikit-learn:传统机器学习算法库(如分类、回归、聚类);
    • TensorFlow/PyTorch:深度学习框架,支持神经网络构建(如图像识别、自然语言处理);
  • 应用场景:用户行为分析(如电商平台购物偏好分析)、推荐系统(如视频平台内容推荐)、图像识别(如人脸识别)。

2. Web 开发

Python 拥有完善的 Web 开发生态,可满足从小型 API 到大型系统的需求:

  • 全功能框架:

    • Django:内置用户认证、数据库管理、后台管理系统,适合电商、内容平台等大型项目;
  • 轻量级框架:

    • Flask:极简核心(仅包含路由与模板),按需扩展(如添加数据库、认证功能),适合小型工具、API 开发;
    • FastAPI:支持异步操作,性能接近 Node.js/Go,适合高并发场景(如实时数据接口);
  • 应用场景:企业官网(如公司产品展示页)、电商平台(如在线购物网站)、API 接口服务(如 App 后端数据接口)。

3. 自动化与运维

Python 是运维工程师的 “效率工具”,可大幅减少重复性工作:

  • 自动化任务:

    • 文件批量处理(os/shutil:批量重命名、移动文件);
    • 数据库定时备份(pymysql/psycopg2:连接 MySQL/PostgreSQL 数据库并备份);
  • 运维工具:

    • Ansible:基于 Python 的自动化运维工具,批量配置服务器、部署应用;
  • 数据采集(爬虫):

    • Requests:发送 HTTP 请求(如获取网页内容);
    • BeautifulSoup/lxml:解析网页 HTML 内容,提取目标数据(如商品价格、新闻标题);
  • 应用场景:服务器批量部署(如同时配置 100 台服务器)、日志分析(如统计系统错误日志)、网页数据爬取(如采集天气数据)。

4. 新兴领域

随着技术发展,Python 在边缘计算、物联网(IoT)等领域的应用逐步增多:

  • 边缘计算:

    • MicroPython:轻量化 Python 解释器,适合嵌入式设备(如 Arduino、ESP32),可在本地处理传感器数据;
  • 物联网:

    • Raspberry Pi(树莓派)开发:用 Python 控制硬件(如摄像头、温湿度传感器),实现环境监控、智能家居控制;
  • 应用场景:智能家居控制(如用 Python 编写脚本控制灯光、空调)、工业设备监控(如实时采集生产线传感器数据)。

1.1.4 Python 的优势

与 C++、Java、JavaScript 等语言相比,Python 的优势集中在 “开发效率、生态完善、门槛低、性能优化” 四个维度,这些优势直接决定了它的广泛适用性:

1. 开发效率极高

  • 代码量少:实现相同功能,Python 代码量通常为 C++ 的 1/5、Java 的 1/3。例如,实现基础 HTTP 服务器:

    # Python:5 行代码实现 HTTP 服务器
    from http.server import HTTPServer, BaseHTTPRequestHandler
    ​
    class SimpleHandler(BaseHTTPRequestHandler):
        def do_GET(self):
            self.send_response(200)
            self.end_headers()
            self.wfile.write(b"Hello, Python Web!")
    ​
    HTTPServer(("", 8000), SimpleHandler).serve_forever()  # 启动服务,监听 8000 端口
    

    上述代码运行后,访问

    http://localhost:8000
    

    即可看到 “Hello, Python Web!”;

  • 优势:无需关注类型声明、内存管理等底层细节,调试便捷,大幅缩短开发周期(如一个简单工具用 Python 1 小时完成,用 C++ 可能需要 5 小时)。

2. 生态系统完善

Python 的生态核心是 PyPI(Python Package Index,Python 包索引) —— 截至 2025 年,PyPI 已收录超过 40 万个第三方库,覆盖几乎所有领域。避免 “从零构建功能”,开发者可直接复用成熟库(如用 requests 发送网络请求,无需手动实现 TCP 连接)。

3. 入门门槛极低

  • 语法友好:接近自然语言,无需学习指针、内存分配等抽象概念(C++ 必学内容)。例如,打印 “Hello World”:

    # Python 打印 Hello World
    print("Hello World")
    

    对比 C++:

    // C++ 打印 Hello World
    #include <iostream>
    using namespace std;
    int main() {
        cout << "Hello World" << endl;
        return 0;
    }
    
  • 资源丰富:官方文档(docs.python.org)提供权威语法与标准库说明;

4. 性能持续优化

长期以来,Python 因 GIL(全局解释器锁) 存在 “多线程并行受限” 的问题,但近年来通过 “Faster CPython” 计划持续优化:

  • 版本性能提升

    • Python 3.11 相比 3.10 平均提速 25%(优化函数调用、垃圾回收机制);
    • Python 3.13 相比 3.10 平均提速 42%,引入实验性 JIT(即时编译)自由线程模式
  • 关键技术说明

    • JIT:将高频执行的 “热点代码”(如循环内操作)编译为机器码(而非逐行解释),CPU 密集型任务可提速 1-3 倍(需手动启用:PYTHON_JIT=1 python script.py);
    • 自由线程模式:突破 GIL 限制,支持多线程同时执行 Python 字节码,真正利用多核 CPU(目前为实验性,需库适配);
  • 补充方案:对极致性能需求(如高频交易、大规模数据计算),可通过 “Python 调用 C/C++ 模块” 混合编程弥补差距(如用 C++ 实现核心算法,Python 负责业务逻辑)。

📌 重点提示:Python 早期被称为 “胶水语言”(用于连接不同语言编写的模块),但如今已升级为 “主力开发语言”—— 开发者无需深入掌握底层实现(如神经网络原理、分布式架构),通过 Python 库即可快速应用先进技术,大幅降低开发门槛。

1.2 Python 2 与 Python 3 的核心差异

Python 自 1991 年迭代至今,最关键的节点是 Python 2 与 3 的 “分野”—— 这一差异需重点梳理,以避免因版本混淆导致开发问题(如 Python 2 代码直接在 3 中运行报错)。

2000 年发布的 Python 2 推动了语言的早期普及,但存在字符串编码混乱、语法规则不一致等历史缺陷;为彻底解决这些问题,2008 年发布的 Python 3.0 进行了不兼容的底层重构,重新规范了语言逻辑。两者的核心差异如下表所示:

对比维度Python 2(已停止维护)Python 3(当前主流)差异影响(开发视角)
print 语法关键字,无需括号:print "Hello Python"函数,必须加括号:print("Hello Python")Python 2 代码直接运行会报语法错误,需修改所有 print 语句
整数除法截断除法(保留整数):3 / 2 = 1 3 // 2 = 1真除法(返回浮点数):3 / 2 = 1.5 整数除法用 //3 // 2 = 1数值计算结果可能偏差(如统计分析时),需调整除法运算符
字符串类型默认 str 为 ASCII 编码(中文易乱码),unicode 为 Unicode 编码:s = "中文"(乱码) s = u"中文"(正常)默认 str 为 Unicode 编码(支持多语言),bytes 表示二进制数据:s = "中文"(正常) b = b"bytes"(二进制)彻底解决中文乱码问题,编码逻辑更清晰
异常处理逗号分隔异常与变量:except Exception, e:as 关键字关联:except Exception as e:Python 2 语法在 3 中失效,需重构所有异常捕获代码
迭代器(rangerange() 返回列表(占用内存):range(3) → [0,1,2] xrange() 返回迭代器range() 直接返回迭代器(无 xrange()):range(3) → range(0,3)(按需生成元素)节省内存(如遍历 100 万个数时),无需区分 range/xrange
输入函数raw_input() 获取字符串:s = raw_input("输入:") input() 执行输入内容(不安全):input("输入:")(输入 1+1 会返回 2)统一为 input(),仅获取字符串(安全):s = input("输入:")(输入 1+1 会返回 "1+1"避免恶意输入执行风险(如输入 os.system("rm -rf /")),输入逻辑统一
维护状态2020 年 1 月 1 日停止维护(无安全更新、无库支持)持续迭代(如 3.11、3.13),定期修复漏洞、新增功能Python 2 项目存在安全风险(如漏洞无法修复),无法使用新库(如 FastAPI 仅支持 3.6+)

📌 重点提示:Python 3 解决了 Python 2 的核心缺陷(编码、语法、安全性),Python 2 已完全淘汰,主流第三方库(如 Pandas 2.0+、Django 4.0+)均终止支持,新项目优先选择 Python 3。

1.3 开发环境搭建

Python 开发环境的搭建是编程入门的第一步。不同操作系统的安装流程略有差异,但核心目标一致:确保系统能识别 Python 解释器,并能灵活管理多个项目的依赖环境(如 Project A 用 Python 3.10,Project B 用 Python 3.13)。本节分系统详解安装步骤,并介绍主流环境管理工具。

1.3.1 不同系统的 Python 安装步骤

Python 安装的核心是 “获取解释器” 与 “配置环境变量”—— 环境变量让系统能在任意终端位置识别 python 命令。以下为各系统的详细步骤:

1. Windows 系统

Windows 系统需手动下载安装包,且需特别注意配置环境变量(避免后续命令行无法识别 Python)。

步骤

  1. 下载安装包:

    • 访问 Python 官网下载页
    • 滚动到 “Stable Releases”(稳定版),选择 Python 3.10 及以上版本(如 3.13.0);
    • 根据系统位数选择安装包:64 位系统选 “Windows Installer (64-bit)”,32 位系统选 “Windows Installer (32-bit)”。
  2. 运行安装包:

    • 双击下载的 .exe 文件;
    • 务必勾选 “Add Python 3.x to PATH” (❶ 自动配置环境变量,避免后续手动设置);
    • 点击 “Install Now”(默认安装路径,适合新手),或 “Customize Installation”(自定义路径,适合进阶用户);
    • 等待安装完成,点击 “Close”。
  3. 验证安装:

    • 打开命令提示符(Win + R → 输入 cmd → 按回车);
    • 执行命令 python --version(或 python -V);
    • 若输出 Python 3.x.x(如 Python 3.13.0),说明安装成功。
  4. 解决常见问题:

    • 问题:提示 “python 不是内部或外部命令,也不是可运行的程序”;
    • 解决:重新运行安装包 → 选择 “Modify”→ 勾选 “Add Python to environment variables”→ 点击 “Next”→“Install”→ 重启命令提示符。

2. macOS 系统

macOS 可能预装 Python 2(如 macOS 12 及以下版本),但需手动安装 Python 3(推荐通过官方包或 Homebrew)。

方式 1:官方包安装

  1. 下载安装包:

    • 访问 Python 官网下载页
    • 选择 “macOS 64-bit universal2 installer”(兼容 Intel 和 M 系列芯片)。
  2. 运行安装包:

    • 双击下载的 .pkg 文件;
    • 按提示点击 “继续”→“同意”→“安装”,输入系统密码完成安装;
    • 安装完成后,Python 会自动配置环境变量。
  3. 验证安装:

    • 打开终端(Command + 空格 → 搜索 “Terminal”→ 按回车);
    • 执行命令 python3 --version
    • 若输出 Python 3.x.x,说明安装成功。

方式 2:Homebrew 安装 Homebrew 是 macOS 包管理工具,可自动处理依赖,安装更便捷:

  1. 安装 Homebrew:

    • 打开终端,执行以下命令(复制粘贴即可):

      /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
      
    • 按提示输入系统密码,等待安装完成。

  2. 安装 Python:

    • 执行命令 brew install python3
    • Homebrew 会自动下载最新版 Python,并配置环境变量。
  3. 验证安装:

    • 执行 python3 --version,输出版本号即成功。

3. Linux 系统

Linux 通常预装 Python 3(如 Ubuntu 20.04+ 预装 Python 3.8),若版本过低可通过包管理器升级。

步骤(以 Ubuntu 为例,其他发行版类似)

  1. 检查当前版本:

    • 打开终端(Ctrl + Alt + T);
    • 执行 python3 --version
    • 若输出 Python 3.10.x 及以上,可直接使用;若版本低于 3.10,需升级。
  2. 安装 / 升级 Python:

    • 执行以下命令更新包列表并安装最新版 Python:

      sudo apt update  # ❶ 更新包索引
      sudo apt install python3  # ❷ 安装/升级 Python 3
      
    • 按提示输入 y 确认安装。

  3. 验证安装:

    • 执行 python3 --version,确认版本为 3.10 及以上。
  4. 安装 pip(包管理工具):

    • pip 用于安装第三方库,执行以下命令安装:

      sudo apt install python3-pip
      
    • 验证:执行 pip3 --version,输出 pip x.x.x from ... (python 3.x) 即成功。

1.3.2 环境变量配置原理与手动设置

环境变量是系统用于定位可执行程序的 “路径列表”。当你在终端输入 python 时,系统会沿环境变量中的路径依次查找 python.exe(Windows)或 python3(macOS/Linux)—— 找到后就运行对应程序,找不到则提示 “命令不存在”。

1. 环境变量配置原理

  • Windows 系统:

    • 环境变量分为 “用户变量”(仅当前用户生效)和 “系统变量”(所有用户生效);
    • Python 安装程序默认将解释器路径(如 C:\Users\Alice\AppData\Local\Programs\Python\Python313)和 Scripts 路径(存放 pip)添加到 “用户变量” 的 Path 中。
  • macOS/Linux 系统:

    • 环境变量存储在配置文件中:

      • 系统级:/etc/profile(所有用户生效);
      • 用户级:~/.bashrc(bash 终端)或 ~/.zshrc(zsh 终端,macOS 10.15+ 默认);
    • Python 安装后会自动将路径(如 /usr/local/bin/python3)添加到这些配置文件。

2. 手动配置方法

若安装后终端无法识别 python 命令,需手动配置环境变量:

Windows 系统

  1. 找到 Python 安装路径:

    • 默认路径:C:\Users\你的用户名\AppData\Local\Programs\Python\Python3x(x 为版本号,如 313);
    • 若自定义路径,找到你选择的安装文件夹(如 D:\Python313)。
  2. 配置环境变量:

    • 右键 “此电脑”→“属性”→“高级系统设置”→“环境变量”;
    • 在 “用户变量” 中找到 Path → 点击 “编辑”→“新建”;
    • 粘贴 Python 安装路径(如 C:\Users\Alice\AppData\Local\Programs\Python\Python313);
    • 再次点击 “新建”,粘贴 Scripts 路径(如 C:\Users\Alice\AppData\Local\Programs\Python\Python313\Scripts);
    • 点击 “确定” 保存,重启命令提示符后生效。

macOS/Linux 系统

  1. 找到 Python 安装路径:

    • 执行 which python3,输出路径(如 /usr/local/bin/python3)。
  2. 配置环境变量:

    • 打开终端,执行 vim ~/.bashrc(或 ~/.zshrc,取决于你的终端);

    • i进入编辑模式,添加以下内容(替换为你的路径):

      export PATH="/usr/local/bin/python3:$PATH"
      
    • Esc,输入 :wq 保存退出;

    • 执行 source ~/.bashrc(或 source ~/.zshrc),让配置生效。

1.3.3 Python 环境管理工具

当同时开发多个项目时,不同项目可能依赖不同版本的 Python 或第三方库(如 Project A 用 requests 2.25,Project B 用 requests 3.0)。直接使用系统 Python 会导致依赖冲突 —— 升级一个项目的库可能导致另一个项目报错。环境管理工具可隔离项目依赖,是开发的必备技能。

1. venv

venv 是 Python 3.3+ 内置的轻量环境管理工具,无需额外安装,适合简单项目(如个人学习、小型脚本)。

基本操作

  1. 创建环境:

    • 打开终端,进入你的项目文件夹(如 cd D:\PythonProjects\my_first_project);

    • 执行命令:

      python -m venv myenv  # Windows(myenv 是环境名称,可自定义)
      python3 -m venv myenv  # macOS/Linux
      
    • 执行后,项目文件夹中会生成 myenv 文件夹,包含独立的 Python 解释器和库目录。

  2. 激活环境:

    • 激活后,终端提示符前会显示(myenv),表示当前使用隔离环境:

      • Windows(命令提示符):myenv\Scripts\activate
      • Windows(PowerShell):.\myenv\Scripts\Activate.ps1(若提示权限问题,执行 Set-ExecutionPolicy RemoteSigned -Scope CurrentUser 后重试)
      • macOS/Linux:source myenv/bin/activate
  3. 使用环境:

    • 激活状态下,python/pip 命令指向隔离环境的解释器和包管理器;
    • 安装库:pip install requests(仅影响当前环境,不影响系统 Python);
    • 查看已安装库:pip list
  4. 退出环境:

    • 执行 deactivate,终端提示符前的 (myenv) 消失,恢复使用系统 Python。
  5. 删除环境:

    • 直接删除项目文件夹中的 myenv 文件夹即可(无残留)。

2. pyenv

pyenv 可同时安装多个 Python 版本(如 3.10、3.13),并为不同项目指定版本,解决 “系统 Python 版本固定” 的问题(如 Project A 需 3.10,Project B 需 3.13)。

安装与使用(macOS/Linux)

  1. 安装 pyenv:

    • 执行自动安装脚本:

      curl https://pyenv.run | bash
      
    • 按安装完成后的提示,将以下内容添加到~/.bashrc~/.zshrc

      echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.zshrc
      echo 'eval "$(pyenv init -)"' >> ~/.zshrc
      echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.zshrc
      
    • 重启终端,执行 pyenv --version,输出版本号即安装成功。

  2. 安装指定 Python 版本:

    • 查看可安装的版本:pyenv install --list(列出所有可用版本);
    • 安装特定版本:pyenv install 3.13.0(安装 3.13.0)、pyenv install 3.10.12(安装 3.10.12);
    • 等待安装完成(需几分钟,会自动下载并编译)。
  3. 管理版本:

    • 查看已安装版本:pyenv versions(输出中带 * 的是当前使用版本);

    • 设置全局版本(系统默认):pyenv global 3.13.0

    • 为项目指定版本(局部版本):

      • 进入项目文件夹:cd ~/Projects/my_project
      • 执行 pyenv local 3.10.12
      • 项目文件夹中会生成 .python-version 文件,记录当前项目使用的版本。

Windows 替代方案pyenv 不直接支持 Windows,需使用 pyenv-winpyenv 的 Windows 分支):

  1. 安装:pip install pyenv-win
  2. 配置环境变量(按安装提示操作);
  3. 使用:命令与 pyenv 一致(如 pyenv install 3.13.0)。

📌 重点提示:新手建议先掌握 venv,满足 80% 的简单项目需求;当需要同时使用多个 Python 版本(如维护旧项目)或团队协作时,再学习 pyenv 提升效率。实际开发中,所有项目都应使用隔离环境,避免污染系统 Python。

1.4 常用 Python IDE

IDE(集成开发环境)是编写 Python 代码的核心工具 —— 不仅提供代码编辑功能,还集成了运行、调试、语法检查等工具,能大幅提升开发效率。本节介绍三款最常用的 Python 开发工具,覆盖从入门到专业开发的全场景。

1.4.1 PyCharm

PyCharm 由 JetBrains 开发,是功能最全面的 Python IDE,内置项目管理、调试器、版本控制(Git)等工具,适合大型项目和团队协作。

1. 版本选择

  • 社区版(Community):

    • 免费,开源;
    • 包含基础功能:代码编辑、运行、调试、语法检查、venv 集成;
    • 适合:个人学习、小型项目、零基础入门。
  • 专业版(Professional):

    • 收费(每年约 200 美元,学生 / 教师可申请免费授权);
    • 新增功能:Web 开发支持(Django/Flask/FastAPI)、数据库集成(MySQL/PostgreSQL)、远程开发;
    • 适合:企业开发、Web 项目、数据科学项目。

2. 基础使用步骤

  1. 下载安装:

    • 访问 PyCharm 官网
    • 选择 “Community Edition”,下载对应系统的安装包;
    • 运行安装包,按提示完成安装(默认选项即可)。
  2. 创建项目:

    • 启动 PyCharm,点击 “New Project”;

    • 配置项目:

      • “Location”:选择项目保存路径(如 D:\PythonProjects\hello_pycharm);
      • “Python interpreter”:勾选 “New Virtual Environment using venv”(❶ 自动创建隔离环境);
    • 点击 “Create” 生成项目。

  3. 编写代码:

    • 在左侧 “Project” 面板中,右键项目文件夹 →“New”→“Python File”;

    • 命名为 hello.py,按回车;

    • 在编辑区输入代码:

      print("Hello, PyCharm!")
      name = input("What's your name? ")
      print(f"Hello, {name}!")
      
  4. 运行代码:

    • 方法 1:右键编辑区空白处 →“Run 'hello'”;

    • 方法 2:点击代码编辑区右上角的绿色 “运行” 按钮(▶️);

    • 运行结果会显示在底部 “Run” 面板:

      Hello, PyCharm!
      What's your name? Alice
      Hello, Alice!
      
  5. 调试代码:

    • 调试用于定位代码错误(如变量值异常);

    • 步骤:

      1. 在代码行号旁点击,设置断点(出现小红点,如第 2 行);
      2. 右键编辑区 →“Debug 'hello'”;
      3. 底部 “Debug” 面板会显示变量值、执行流程,可通过 “Step Over”(F8)逐行执行代码。

3. 优势与适用场景

  • 优势:

    • 智能代码提示:基于上下文推荐代码(如输入 pri 会提示 print);
    • 内置工具丰富:无需额外配置即可使用 Git、虚拟环境、代码格式化;
    • 框架支持完善:开发 Django/Flask 时自动识别项目结构,提供专属提示。
  • 适用场景:

    • 大型项目开发(如多人协作的电商平台);
    • 框架开发(如 Django Web 应用);
    • 对开发效率要求高的场景。

1.4.2 VS Code + Python 插件

VS Code(Visual Studio Code)是微软开发的轻量编辑器,通过安装插件可支持 Python 开发 —— 兼顾轻量(启动快、占用内存少)与功能丰富,适合个人开发者和多语言开发场景(如同时编写 Python + HTML + JavaScript)。

1. 配置步骤

  1. 安装 VS Code:

    • 访问 VS Code 官网,下载对应系统的安装包;
    • 运行安装包,按提示完成安装(勾选 “添加到 PATH” 方便终端启动)。
  2. 安装 Python 插件:

    • 打开 VS Code;
    • 点击左侧 “扩展” 图标(或按 Ctrl + Shift + X);
    • 搜索 “Python”,安装微软官方插件(作者为 Microsoft,下载量最高);
    • 安装完成后,VS Code 会提示安装 pylint(语法检查工具),点击 “Install” 即可。
  3. 配置 Python 解释器:

    • 打开项目文件夹:File → Open Folder(选择你的项目路径,如 D:\PythonProjects\hello_vscode);
    • 按下 Ctrl + Shift + P(macOS 为 Command + Shift + P),输入 “Python: Select Interpreter”;
    • 选择已安装的 Python 版本(如 Python 3.13.0 64-bit)或 venv 环境中的解释器(如 ./myenv/Scripts/python.exe)。

2. 基本操作

  1. 创建文件:

    • 在左侧 “资源管理器” 面板中,右键项目文件夹 →“新建文件”;
    • 命名为 hello.py,按回车。
  2. 编写代码:

    • 在编辑区输入代码:

      # 计算 1 到 10 的和
      total = 0
      for i in range(1, 11):
          total += i
      print(f"1 到 10 的和:{total}")
      
  3. 运行代码:

    • 方法 1:右键编辑区 →“Run Python File in Terminal”;

    • 方法 2:点击编辑区右上角的 “运行 Python 文件” 按钮(▶️);

    • 运行结果显示在底部 “终端” 面板:

      1 到 10 的和:55
      
  4. 调试代码:

    • 步骤:

      1. 在代码行号旁点击设置断点(如第 3 行);
      2. F5 启动调试;
      3. 底部 “运行和调试” 面板会显示变量值(如 i 从 1 逐步增加到 10),可通过 “单步跳过”(F10)逐行执行。

3. 优势与适用场景

  • 优势:

    • 轻量高效:启动速度快(比 PyCharm 快 3-5 倍),内存占用少;
    • 插件生态丰富:支持 Git、Markdown、Docker 等,可一站式完成开发;
    • 跨平台体验一致:Windows/macOS/Linux 操作完全相同。
  • 适用场景:

    • 个人开发、中小型项目;
    • 需要同时编写多种语言的场景(如 Python 后端 + HTML 前端);
    • 对编辑器启动速度有要求的场景。

1.4.3 IDLE

IDLE 是 Python 官方自带的简易 IDE,无需额外安装 —— 随 Python 一起被安装在系统中,界面简洁,操作简单,适合零基础学习者快速上手(如测试单行代码、编写简单脚本)。

1. 启动方式

  • Windows 系统:

    • “开始菜单”→ 搜索 “IDLE (Python 3.x)”→ 点击启动;
  • macOS 系统:

    • “应用程序”→ 打开 “Python 3.x” 文件夹 → 双击 “IDLE”;
  • Linux 系统:

    • 打开终端,执行 idle3 → 启动 IDLE。

2. 基本功能

  1. 交互式解释器(Shell):

    • 启动 IDLE 后默认进入交互式环境(提示符为 >>>);

    • 可直接输入代码片段执行(如计算、简单打印):

      >>> 1 + 2 * 3
      7
      >>> print("Hello, IDLE!")
      Hello, IDLE!
      
    • 适合:快速测试语法、验证函数功能(如 range(5) 的结果)。

  2. 编辑器:

    • 点击 “File → New File”,打开空白编辑器;

    • 编写完整脚本(如hello_idle.py):

      # 简单的问候脚本
      name = input("请输入你的名字:")
      print(f"你好,{name}!欢迎学习 Python。")
      
    • 保存文件:点击 “File → Save”,选择保存路径;

    • 运行脚本:按F5(或 “Run → Run Module”),运行结果显示在 Shell 窗口:

      请输入你的名字:Bob
      你好,Bob!欢迎学习 Python。
      
  3. 基础调试:

    • 支持简单断点:右键代码行 →“Set Breakpoint”(出现红色圆点);
    • 启动调试:按 F5,程序会在断点处暂停,可通过 “Debug → Step Over” 逐行执行;
    • 局限:无变量监视面板,调试功能远不及 PyCharm 和 VS Code。

3. 优势与适用场景

  • 优势:

    • 零配置:安装 Python 后自动可用,无需额外设置;
    • 体积小:占用内存少(仅几 MB),启动快;
    • 与 Python 版本完全兼容:不会出现 “插件与 Python 版本不匹配” 的问题。
  • 适用场景:

    • 零基础入门(熟悉 Python 基础语法);
    • 快速测试单行代码或简单脚本(如验证 json.dumps() 的用法);
    • 计算机配置较低的场景。

1.5 第三方库管理工具

Python 的强大生态依赖于丰富的第三方库(如 numpy 用于数值计算、requests 用于网络请求)。包管理工具的核心作用是:安装 / 升级 / 卸载库、管理不同版本的依赖关系(避免冲突)。本节介绍四类常用工具,覆盖从简单安装到复杂项目管理的需求。

1.5.1 pip

pip 是 Python 内置的包管理工具,用于从 PyPI(Python Package Index)安装第三方库 —— 是最基础、使用最广泛的工具,几乎所有 Python 项目都会用到。

1. 基本命令

pip 命令需在终端执行,且建议在虚拟环境(如 venv)中使用(避免污染系统 Python)。常用命令如下表所示:

功能命令示例说明
安装库pip install 库名pip install requests安装库的最新稳定版
安装指定版本pip install 库名==版本号pip install requests==2.31.0安装特定版本(解决 “新版本不兼容” 问题)
升级库pip install --upgrade 库名pip install --upgrade requests将库升级到最新版
卸载库pip uninstall 库名pip uninstall requests卸载库,会提示确认
查看已安装库pip list-列出当前环境中所有已安装的库及版本
查看库详细信息pip show 库名pip show requests显示库的版本、作者、依赖、安装路径等
导出依赖列表pip freeze > requirements.txt-将当前环境的依赖保存到文件
从依赖列表安装pip install -r requirements.txt-按文件安装所有依赖(复现环境)

2. 示例:使用 pip 管理项目依赖

假设你开发一个简单的网络请求脚本,步骤如下:

  1. 创建并激活虚拟环境(避免污染系统 Python):

    python -m venv myenv  # 创建环境
    myenv\Scripts\activate  # Windows 激活
    # source myenv/bin/activate  # macOS/Linux 激活
    
  2. 安装所需库:

    pip install requests  # 安装网络请求库
    pip install python-dotenv  # 安装环境变量管理库
    
  3. 导出依赖列表:

    pip freeze > requirements.txt
    

    执行后,项目文件夹中会生成requirements.txt文件,内容如下:

    requests==2.31.0
    python-dotenv==1.0.0
    charset-normalizer==3.3.2
    idna==3.7
    urllib3==2.2.1
    certifi==2024.2.2
    
  4. 分享项目与复现环境:

    • requirements.txt 与代码一起分享给他人;

    • 他人获取项目后,执行以下命令即可安装相同依赖:

      pip install -r requirements.txt
      

3. 常见问题与解决方案

  • 问题 1:权限不足(macOS/Linux)

    • 症状:执行 pip install 库名 时提示 “Permission denied”;
    • 解决:避免使用 sudo pip install(可能污染系统 Python),优先使用虚拟环境;若必须全局安装,执行 pip install --user 库名(仅当前用户可用)。
  • 问题 2:下载速度慢(国内用户)

    • 症状:安装大型库(如 numpy)时下载超时;

    • 解决:使用国内镜像源加速,安装时添加-i参数:

      # 使用清华镜像源安装 requests
      pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests
      
    • 常用镜像源:

      • 清华:https://pypi.tuna.tsinghua.edu.cn/simple
      • 阿里云:https://mirrors.aliyun.com/pypi/simple/
  • 问题 3:库安装后无法导入

    • 症状:执行 import requests 时提示 “ModuleNotFoundError”;
    • 解决:检查当前使用的 Python 解释器是否为虚拟环境中的解释器(激活环境后 python --version 应显示虚拟环境路径)。

1.5.2 conda

conda 是 Anaconda 发行版自带的包管理工具,支持 Python、R 等多语言库 —— 核心优势是能安装非 Python 依赖(如 numpy 的底层 C 库、pytorch 的 CUDA 依赖),尤其适合数据科学领域。

1. 环境管理

conda 不仅能管理库,还能管理 Python 版本,可创建独立的环境(类似 venv + pyenv 的组合):

功能命令示例说明
创建环境conda create -n 环境名 python=版本conda create -n data_env python=3.10创建名为 data_env、Python 3.10 的环境
激活环境conda activate 环境名conda activate data_env激活环境,提示符前显示 (data_env)
退出环境conda deactivate-恢复使用系统 Python
查看所有环境conda env list-列出所有 conda 环境及路径
删除环境conda remove -n 环境名 --allconda remove -n data_env --all彻底删除环境(需确认)

2. 包管理命令

conda 安装库时会自动解决依赖冲突(如 pandas 依赖 numpy,会自动安装匹配版本的 numpy):

功能命令示例说明
安装库conda install 库名conda install numpy安装库的最新稳定版
安装指定版本conda install 库名=版本号conda install numpy=1.24.3安装特定版本
升级库conda update 库名conda update numpy将库升级到最新版
卸载库conda remove 库名conda remove numpy卸载库,会自动删除无用依赖
导出环境配置conda env export > environment.yml-导出环境的完整配置(含 Python 版本)
从配置文件创建环境conda env create -f environment.yml-按文件复现环境(适合团队协作)

3. 示例:用 conda 管理数据科学项目

  1. 创建环境并激活:

    conda create -n ml_env python=3.10  # 创建机器学习环境
    conda activate ml_env  # 激活环境
    
  2. 安装数据科学库:

    conda install numpy pandas matplotlib scikit-learn
    

    conda 会自动安装所有依赖(如pandas依赖的python-dateutil),无需手动处理。

  3. 导出环境配置:

    conda env export > environment.yml
    

    environment.yml文件内容如下(含 Python 版本和所有依赖):

    name: ml_env
    channels:
      - defaults
    dependencies:
      - python=3.10.12
      - numpy=1.24.3
      - pandas=2.0.3
      - matplotlib=3.7.1
      - scikit-learn=1.3.0
      - ...  # 其他依赖
    
  4. 复现环境:

    他人获取environment.yml后,执行以下命令即可创建相同环境:

    conda env create -f environment.yml
    

4. 适用场景

  • 数据科学项目:依赖大量非 Python 库(如 numpy 的 C 底层、tensorflow 的 CUDA 支持);
  • 跨语言项目:同时使用 Python 和 R(如用 Python 处理数据,R 绘制统计图表);
  • 团队协作:需严格统一环境配置(含 Python 版本和依赖版本)。

📌 重点提示:新手初期务必聚焦 pip 的核心命令和requirements.txt的使用,不要同时学习多种工具 —— 工具是服务于项目的,等遇到具体场景(如数据科学、团队协作)再学对应的工具,能避免信息过载。