卡塔尔世界杯冠军_女子乒乓球世界杯 - ecmipu.com

Python 初学者必备的库及其分类(结合虚拟环境)

在编程和软件开发中,库(Library) 是一组预先编写好的代码、函数、类或工具的集合,旨在帮助开发者更高效地完成特定任务,而无需从零开始实现所有功能[[1]]。库可以看作是一个“工具箱”,提供了许多现成的功能模块,供开发者调用。

第一部分 库的基本概念

一、 库的定义

定义: 库是一组经过封装的代码,通常以文件的形式提供(如 Python 的 .py 文件或编译后的二进制文件),包含可复用的功能。

作用:

提高开发效率:通过调用现成的功能,避免重复造轮子。增强程序功能:扩展语言的能力,例如数据分析、网络请求等。

二、 库的分类

1. 标准库(Standard Library)

随编程语言一起提供的内置库,无需额外安装即可直接使用。示例(Python 标准库):

os:操作系统接口,用于文件和目录操作。datetime:日期和时间处理。math:数学运算相关功能。

2. 第三方库(Third-Party Library)

由社区或公司开发的外部库,需通过包管理工具(如 pip)安装后使用。示例(Python 第三方库):

numpy:科学计算库,支持多维数组操作。requests:发送 HTTP 请求,抓取网页内容。

三、库的工作原理

封装与调用: 库将常用功能封装成模块或函数,开发者只需导入(import)并调用即可。

示例:import math

print(math.sqrt(16)) # 调用math库中的sqrt函数计算平方根

依赖管理: 复杂项目可能需要多个库协同工作,因此需要管理库的版本和依赖关系。

第二部分 根据需要选择库

以下是一些比较常见的,通用性强的库:

一、 自带的标准库

Python 自带了许多强大的内置库,无需额外安装即可使用。初学者应优先掌握以下常用库:

1. 基础工具类

os:用于与操作系统交互(如文件路径操作、目录管理)。 示例:os.path.join()、os.makedirs()。sys:用于处理命令行参数和退出程序。 示例:sys.argv、sys.exit()。math:提供数学运算功能(如三角函数、对数等)。

2. 数据处理类

datetime:处理日期和时间。 示例:datetime.datetime.now()。random:生成随机数。 示例:random.randint(1, 10)。

3. 文件操作类

json:解析和生成 JSON 数据。 示例:json.loads()、json.dumps()。csv:读写 CSV 文件。 示例:csv.reader()、csv.writer()。

4. 调试工具类

logging:记录日志信息,便于调试和错误追踪。 示例:logging.basicConfig()。

二、 需要下载的第三方库

第三方库需要通过 pip 安装,初学者可以根据需求选择性学习。pip 本身是一个 Python 库 ,它是 Python 的包管理工具,用于安装和管理第三方库。

1. 第三方库的安装步骤

打开命令行 windows: Win + R,输入 cmd 并回车。 macOS :通过“实用工具”文件夹或聚焦搜索打开终端。 Linux :通过菜单、快捷键(如 Ctrl + Alt + T)或切换到纯命令行模式。输入指令安装

安装指定库:pip install 库名由于网络问题,国内直接从 PyPI 下载代码文件速度较慢,甚至可能失败。为此,我们通常会设置一个国内的镜像源(如清华大学镜像源)来加速下载: (1)临时指定镜像源 在安装命令后添加 -i 参数指定镜像源:pip install 库名 -i 镜像源 (2) 永久配置镜像源 方法一:使用 pip config 命令 在命令行中输入:

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

此方法适合单机用户,可以快速简便地配置 方法二:手动编辑 pip.ini 文件 Windows :编辑 %APPDATA%\pip\pip.ini 文件,添加以下内容:

[global]

index-url = https://pypi.tuna.tsinghua.edu.cn/simple

Linux/macOS :编辑 ~/.pip/pip.conf 文件,添加以下内容:

[global]

index-url = https://pypi.tuna.tsinghua.edu.cn/simple

(3)常用的国内 pip 镜像源 清华大学镜像源:https://pypi.tuna.tsinghua.edu.cn/simple 特点 :完全度和速度都很好,是一个优秀的 pip 镜像源 阿里云镜像源:https://mirrors.aliyun.com/pypi/simple 特点 :完全度和速度也很好,是一个不错的选择 豆瓣镜像源:https://pypi.douban.com/simple 特点 :速度较快,但可能部分包不同步 网易镜像源:https://mirrors.163.com/pypi/simple 特点 :速度较快,但完全度有限 中国科学技术大学镜像源:https://pypi.mirrors.ustc.edu.cn/simple 特点 :较新的镜像源,覆盖范围广且速度快

指定版本安装:pip install 库名==版本号升级库到最新版:pip install --upgrade 库名批量安装: 通过 -r 参数结合 requirements.txt 文件可以批量安装库: (1) 创建 requirements.txt 文件,列出所有需要安装的库及其版本(每行一个库)。例如: numpy==1.21.0 pandas>=1.3.0 requests (2) 运行以下命令安装文件中列出的所有库:

pip install -r requirements.txt

检查已安装的库卸载库卸载指定库:pip uninstall 库名

2. 根据需求选择第三方库

(1)科学计算与数据分析

numpy:高效的数值计算库,支持多维数组操作。pandas:用于数据处理和分析,特别适合表格型数据。matplotlib:绘制高质量的图表和可视化。

(2) Web 开发与爬虫

requests:发送 HTTP 请求,抓取网页内容。beautifulsoup4:解析 HTML 和 XML 文档,提取数据。flask:轻量级 Web 框架,快速构建 Web 应用。

(3) 机器学习与人工智能

scikit-learn:经典的机器学习库,包含多种算法。tensorflow 或 pytorch:深度学习框架。

(4) 自动化与脚本工具

selenium:自动化浏览器操作(如网页测试、爬虫)。pyautogui:控制鼠标和键盘进行自动化操作。

三、 推荐的学习顺序

1. 第一阶段:掌握标准库

学习 Python 自带的标准库,熟悉基本语法和常用功能(如 os、sys、datetime 等)。

2. 第二阶段:扩展到第三方库

根据兴趣或项目需求,逐步学习第三方库。例如:

数据分析:numpy、pandas、matplotlib。Web 开发:requests、flask。自动化:selenium、pyautogui。

3. 第三阶段:深入领域

如果对某个领域感兴趣,可以深入学习相关库。例如:

机器学习:scikit-learn、tensorflow。数据可视化:seaborn、plotly。

第三部分 结合虚拟环境使用库

一、 什么是虚拟环境?

虚拟环境是一种隔离的 Python 环境,用于管理项目的依赖和工具。它允许开发者为每个项目创建独立的 Python 环境,避免不同项目之间的依赖冲突。

1. 为什么需要虚拟环境?

避免依赖冲突: 不同项目可能需要不同版本的同一个库。例如,项目 A 需要 requests 库的 1.0 版本,而项目 B 需要 requests 库的 3.0 版本。如果没有虚拟环境,这些依赖可能会互相干扰,导致程序无法正常运行。保持全局环境整洁: 如果所有项目都直接安装到全局 Python 环境中,会导致系统中安装大量不必要的库,容易混乱。

2. 虚拟环境的特点

每个虚拟环境是独立的,有自己的 Python 解释器和安装的库。虚拟环境不会影响系统的全局 Python 环境。标准库(如 os、sys)仍然可以直接使用,无需重新安装。

二、什么是依赖?

依赖 是指一个项目运行所需的外部库或模块。简单来说,就是你的代码需要调用别人已经写好的功能。

1. 依赖的作用

提高开发效率:通过复用现成的功能模块,减少重复造轮子的时间。扩展语言能力:例如,Python 自带的功能有限,但通过安装第三方库(如 numpy 或 requests),可以实现更复杂的功能。

2. 依赖的分类

标准库依赖:Python 自带的库,无需额外安装(如 os、datetime)。第三方库依赖:需要通过包管理工具(如 pip)安装的库(如 pandas、flask)。

3. 虚拟环境与依赖的关系

虚拟环境的主要作用是隔离依赖,确保每个项目都有自己的依赖集合,互不干扰。例如:

项目 A 使用 numpy==1.21.0 和 pandas==1.3.0。项目 B 使用 numpy==1.23.0 和 pandas==2.0.0。

为每个项目安装依赖之前应当先创建虚拟环境。

三、 安装全局库和项目专用库

1. 通用库(适合安装在全局环境中)

这些库适用于大多数项目,且版本更新较少,可以直接安装在全局环境中,方便随时调用。

(1)基础工具类

requests:用于发送 HTTP 请求,几乎每个需要网络交互的项目都会用到。numpy 和 pandas:科学计算和数据分析的基础工具,适用于数据处理任务。

(2)调试与日志

logging:自带标准库,无需额外安装,但可以结合第三方扩展库(如 loguru)提升功能。

(3)文件操作

json 和 csv:自带标准库,无需额外安装,常用于数据存储和解析。

2. 项目专属库(建议安装在虚拟环境中)

这些库通常因项目需求而异,或存在版本冲突问题,建议使用虚拟环境隔离管理。

(1)Web 开发与爬虫

flask 或 django:Web 框架,不同项目可能需要不同的版本。beautifulsoup4 和 selenium:用于网页抓取和自动化操作,版本更新频繁,容易产生依赖冲突。

(2)机器学习与深度学习

tensorflow 和 pytorch:深度学习框架,不同项目可能需要特定版本,且依赖复杂。scikit-learn:经典机器学习库,建议安装在虚拟环境中以避免与其他库冲突。

(3)可视化与图形处理

matplotlib 和 seaborn:数据可视化工具,不同项目可能需要自定义配置。opencv-python:图像处理库,版本差异较大,建议隔离安装。

最新发表
友情链接

Copyright © 2022 卡塔尔世界杯冠军_女子乒乓球世界杯 - ecmipu.com All Rights Reserved.