当前位置: 首页 > news >正文

【Python】复习12:标准库与第三方库

目录

    • 概念
      • 标准库
      • 第三方库
      • 总结
    • Python 标准库
      • `os` 模块
      • `sys` 模块
      • `json` 模块
      • `re` 模块
      • `datetime` 模块
      • 代码示例
        • `os` 模块例子
        • `sys` 模块例子
        • `json` 模块例子
        • `re` 模块例子
        • `datetime` 模块例子
    • 第三方库
      • `numpy`
      • `pandas`
      • `requests`
      • 安装第三方库
      • 使用第三方库
    • 其他一些流行的Python库
        • 数据可视化
        • 机器学习与深度学习
        • Web开发
        • 自动化测试
        • 图像处理

概念

在Python中,标准库和第三方库都是程序员开发过程中非常重要的资源。它们各自具有不同的特点和用途,下面我将对它们进行详细的解释。

标准库

Python的标准库是随Python解释器一起安装的,它包含了大量预定义的模块和函数,用于执行各种常见的任务。这些模块和函数涵盖了广泛的领域,如文件操作、字符串处理、网络编程、数据结构和算法等。由于标准库是Python的一部分,因此无需额外安装即可使用。

标准库中的一些常见模块包括:

  • os:用于操作系统相关的功能,如文件和目录操作。
  • sys:提供对Python解释器的一些变量和功能的访问。
  • re:用于正则表达式匹配和处理。
  • json:用于处理JSON格式的数据。
  • datetime:用于日期和时间的处理。

使用标准库中的模块非常简单,只需要通过import语句导入相应的模块,然后调用其中的函数或类即可。

第三方库

第三方库是由Python社区中的开发者创建并发布的,用于扩展Python的功能。这些库通常用于执行特定的任务或提供特定的功能,如数据分析、机器学习、Web开发等。由于第三方库不是Python解释器的一部分,因此需要单独安装才能使用。

安装第三方库通常使用Python的包管理工具pip。你可以通过pip install命令来安装所需的库。

一些流行的第三方库包括:

  • numpy:用于数值计算的库,提供了高性能的多维数组对象和用于操作这些数组的工具。
  • pandas:提供了数据结构和数据分析工具,用于数据处理和分析。
  • matplotlib:用于绘制各种静态、动态、交互式的可视化图形。
  • scikit-learn:提供了简单高效的工具,用于数据挖掘和数据分析。
  • flaskdjango:用于Web开发的框架。

使用第三方库时,你需要先导入相应的库,然后才能使用其中的功能。与标准库类似,你可以使用import语句来导入第三方库。

总结

标准库和第三方库都是Python编程中不可或缺的资源。标准库提供了基础的功能和工具,而第三方库则用于扩展Python的功能并满足特定的需求。在使用这些库时,你需要了解它们的安装方法、导入方式以及提供的函数和类,以便能够有效地利用它们来编写高质量的Python代码。

Python 标准库

Python 标准库是一组与 Python 解释器一起安装的内置模块和包,它们为 Python 程序员提供了大量预先编写好的功能,无需额外安装即可使用。这些模块和包涵盖了从基本的数据结构到高级的网络编程、文件处理等各个方面的功能。下面将详细解释几个常用的 Python 标准库模块:

os 模块

os 模块提供了与操作系统交互的功能。它允许你执行许多操作系统级别的任务,如文件和目录操作、环境变量管理、进程管理等。

常用功能:

  • os.getcwd():获取当前工作目录。
  • os.listdir(path):列出指定目录下的所有文件和子目录。
  • os.path.join(path1, path2, ...):连接一个或多个路径组件。
  • os.path.exists(path):检查指定路径是否存在。
  • os.makedirs(name, mode=0o777, exist_ok=False):递归创建目录。
  • os.remove(path):删除文件。
  • os.environ:一个映射,表示环境变量。

sys 模块

sys 模块提供了对 Python 解释器使用或维护的一些变量的访问,以及与 Python 解释器强烈交互的功能。

常用功能:

  • sys.argv:一个包含命令行参数的列表。
  • sys.exit([arg]):退出当前程序,可选参数 arg 可以被用来给操作系统返回一个状态码。
  • sys.modules:这是一个字典,它将模块名映射到模块对象。
  • sys.path:一个列表,指定了解释器查找模块的路径。
  • sys.stdin, sys.stdout, sys.stderr:分别表示标准输入、标准输出和标准错误流。

json 模块

json 模块提供了对 JSON 数据格式的编码和解码功能。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。

常用功能:

  • json.dumps(obj):将 Python 对象编码成 JSON 格式的字符串。
  • json.loads(s):将 JSON 格式的字符串解码为 Python 对象。
  • json.dump(obj, fp):将 Python 对象编码成

相关文章:

【Python】复习12:标准库与第三方库

目录 概念标准库第三方库总结Python 标准库`os` 模块`sys` 模块`json` 模块`re` 模块`datetime` 模块代码示例`os` 模块例子`sys` 模块例子`json` 模块例子`re` 模块例子`datetime` 模块例子第三方库`numpy``pandas``requests`安装第三方库使用第三方库其他一些流行的Python库数…...

CUDA 12介绍

CUDA(Compute Unified Device Architecture)是由 NVIDIA 开发的并行计算平台和应用程序编程接口(API)。CUDA 使开发人员能够使用 NVIDIA GPU 进行通用目的的并行计算。CUDA 通过利用 GPU 的大规模并行计算能力来加速各种类型的计算…...

旅游系统-软件与环境

运行 1.下载软件并进行环境配置 2.导入项目包以及SQL文件 (1)VsCode 管理员运行打开 a.新建terminal 注意: 1.执行 npm config set registry https://registry.npm.taobao.org 2.执行 npm install 3.执行 $env:NODE_OPTIONS“–openssl-legacy-provider” b.输入…...

AI基础知识(2)--决策树,神经网络

1.什么是决策树? 决策树是一类常见的机器学习方法,决策树是基于树的结构来进行决策。决策过程中提出的每一个问题都是对于属性的“测试”,决策的最终结论对应了我们希望的判定结果。一个决策树包含一个根节点,若干个内部节点和若…...

蓝桥杯C++大学B组一个月冲刺记录2024/3/21

蓝桥杯C大学B组一个月冲刺记录2024/3/20 规则:每日三题 今日的题很简单┗|`O′|┛ 嗷~~ 1.奶酪 现有一块大奶酪,它的高度为 h ,它的长度和宽度我们可以认为是无限大的,奶酪中间有许多半径相同的球形空洞。 我们可以在…...

由浅到深认识C语言(14):枚举

该文章Github地址:https://github.com/AntonyCheng/c-notes 在此介绍一下作者开源的SpringBoot项目初始化模板(Github仓库地址:https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址:https://blog.csdn…...

速盾cdn:cdn节点缓存内容不一致怎么办?

在使用CDN服务时,有时候可能会遇到CDN节点缓存内容不一致的情况。这种情况会导致用户访问网站时获取到的内容不一致,给用户带来困惑和不良体验。那么当遇到这种情况时,我们应该如何解决呢? 首先,我们需要了解CDN是如何…...

【LAMMPS学习】三、构建LAMMPS(6)在构建中包含软件包

3. 构建 LAMMPS 3.6.在构建中包含软件包 在 LAMMPS 中,包是一组启用一组特定功能的文件。例如,分子系统的力场或刚体约束都在封装中。在 src 目录中,每个包都是一个子目录,包名称为大写字母。 包文档页面上给出了包的概述。每…...

apache commons-dbcp Apache Commons DBCP 软件实现数据库连接池 commons-dbcp2

DBCP组件 许多Apache项目支持与关系型数据库进行交互。为每个用户创建一个新连接可能很耗时(通常需要多秒钟的时钟时间),以执行可能需要毫秒级时间的数据库事务。对于一个公开托管在互联网上的应用程序,在同时在线用户数量可能非…...

8.2K star!史上最强Web应用防火墙

🚩 0x01 介绍 长亭雷池SafeLine是长亭科技耗时近 10 年倾情打造的WAF(Web Application Firewall),一款敢打出口号 “不让黑客越雷池一步” 的 WAF,我愿称之为史上最强的一款Web应用防火墙,足够简单、足够好用、足够强的免费且开源…...

浅谈RPC的理解

浅谈RPC的理解 前言RPC体系Dubbo架构最后 前言 本文中部分知识涉及Dubbo,需要对Dubbo有一定的理解,且对源码有一定了解 如果不了解,可以参考学习我之前的文章: 浅谈Spring整合Dubbo源码(Service和Reference注解部分&am…...

JDK发布信息、历史及未来规划

1.未来规划 发布日期类型版本其它信息2026-01-20CPU25.0.2, 21.0.10, 17.0.18, 11.0.30, 8u4812025-10-21CPU25.0.1, 21.0.9, 17.0.17, 11.0.29, 8u4712025-09-16Feature*25 LTS2025-07-15CPU24.0.2, 21.0.8, 17.0.16, 11.0.28, 8u4612025-04-15CPU24.0.1, 21.0.7, 17.0.15, 1…...

帅帅密码管理系统使用教程

在这个账号满天飞的大环境,密码太多,又容易遗忘,又不方便管理,存在记事本上,又担心泄漏。帅帅密码管理系统就是帮助你解决以上烦恼,用来帮助个人或团队管理众多的登陆密码,能够快速的查询、新增…...

漫谈5种注册中心

01 注册中心基本概念 1.1 什么是注册中心? 注册中心主要有三种角色: 服务提供者(RPC Server):在启动时,向 Registry 注册自身服务,并向 Registry 定期发送心跳汇报存活状态。 服务消费者&…...

Vulnhub靶机:Kioptrix_2014

一、介绍 运行环境:Virtualbox和vmware 攻击机:kali(192.168.56.101) 靶机:Kioptrix: 2014(192.168.56.108) 目标:获取靶机root权限和flag 靶机下载地址:https://ww…...

Spring Boot整合Spring Security

Spring Boot 专栏:Spring Boot 从零单排 Spring Cloud 专栏:Spring Cloud 从零单排 GitHub:SpringBootDemo Gitee:SpringBootDemo Spring Security是针对Spring项目的安全框架,也是Spring Boot底层安全模块的默认技术…...

Rust字符串深入理解

一、概述 Rust是一种系统级语言,进行操作系统等底层应用开发,同时又具合理的抽象处理能力。在进行Rust编程时,字符串处理是程序员经常碰到的工作。本文深入解析Rust语言中字符串的使用,包括 static string,String与&a…...

TSINGSEE青犀AI智能分析网关V4酿酒厂安全挂网AI检测算法

在酿酒行业中,安全生产一直是企业经营中至关重要的一环。为了确保酒厂生产过程中的安全,TSINGSEE青犀AI智能分析网关V4的安全挂网AI检测算法发挥了重要作用。 TSINGSEE青犀AI智能分析网关V4的安全挂网检测算法是针对酒厂里酒窖挂网行为进行智能检测与识…...

LeetCode第126场双周赛个人题解

目录 100262. 求出加密整数的和 原题链接 思路分析 AC代码 3080. 执行操作标记数组中的元素 原题链接 思路分析 AC代码 100249. 替换字符串中的问号使分数最小 原题链接 思路分析 AC代码 100241. 求出所有子序列的能量和 原题链接 思路分析 AC代码 100262. 求出…...

牛客NC403 编辑距离为一【中等 模拟法 Java,Go,PHP】

题目 题目链接: https://www.nowcoder.com/practice/0b4b22ae020247ba8ac086674f1bd2bc 思路 注意:必须要新增一个,或者删除一个,或者替换一个,所以不能相等1.如果s和t相等,返回false,如果s和t长度差大于1…...

【力扣数据库知识手册笔记】索引

索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例&#xff0c;也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下&#xff1a; 定义实例工厂类&#xff08;Java代码&#xff09;&#xff0c;定义实例工厂&#xff08;xml&#xff09;&#xff0c;定义调用实例工厂&#xff…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

C# 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

网站指纹识别

网站指纹识别 网站的最基本组成&#xff1a;服务器&#xff08;操作系统&#xff09;、中间件&#xff08;web容器&#xff09;、脚本语言、数据厍 为什么要了解这些&#xff1f;举个例子&#xff1a;发现了一个文件读取漏洞&#xff0c;我们需要读/etc/passwd&#xff0c;如…...

Netty从入门到进阶(二)

二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架&#xff0c;用于…...

scikit-learn机器学习

# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...