• 常用标准库


    Python web开发中常用的标准库简介

     

    开发过程中,深有体会的一点就是,学习一门编程语言,除了要精通它的语法以外,更需要我们去学习该门语言的标准库。标准库是多年以来,大量开发人员留给我们的宝贵财富,它涵盖了编程中的方方面面。从发送Email到GUI开发,再到内置的Http服务器,一应俱全。

    Python标准库从Python诞生到现在,已经拥有接近200个模块(包),可以完成我们需要的所有工作。可能有些人会说,这么多模块,怎么学的过来呢。是的,标准库的内容是很多,但是,我们可以选择我们所在的领域中的一些常用标准库,经过系统的学习,我们也能在该领域更好地工作。今天就来说一说在web开发中,我们最常用的标准库。

    一、 文本

    1. string

    常用的a-z、0-9、不可打印字符等等这些都在string模块里定义好了,开发中可以直接导入使用。

    2. re

    正则表达式的作用就不言而喻了吧,我们所需要的正则就在re模块中。

    二、 数据结构

    1. collections

    Python内置的数据结构有时可能并不能满足我们日常的开发,这时可以在collections模块中去寻找,如Counter、deque、OrderedDict等等,这些有用的数据结构我们可以直接使用,而不必我们再去重复造轮子了。

    2. copy

    Python中的想要实现深拷贝,就只有使用copy中的deepcopy了。

    3. struct

    在网络中二进制的打包与解包就用它了。

    三、 算法

    1. functools

    functools封装了编写函数是常用的一些功能,如装饰器中的wraps,偏函数partial等等。

    2. itertools

    迭代器相关的函数,如chain、count、repeat、cycle等。

    四、 日期和时间

    开发中常会处理一些日期和时间相关的逻辑,一下便是常用的一些模块。

    1. time

    时钟时间相关的函数

    2. datetime

    日期相关的函数

    3. calendar

    日期相关的函数

    五、 数学计算

    1. decimal

    定点数和浮点数的运算

    2. fractions

    有理数

    3. random

    随机数相关

    4. math

    数学函数

    六、 文件系统

    1. os

    操作系统相关的一些操作

    2. tempfile

    临时文件

    3. StringIO

    类似于文件api的文本缓冲区

    七、 数据压缩与归档

    1. zlib

    GNU zlib压缩

    2. gzip

    GNU zip文件

    3. tarfile

    tar归档文件

    4. zipfile

    zip文档文件

    八、 密码

    hashlib用户密码的散列

    九、 进程与线程

    1. subprocess

    创建附加进程

    2. signal

    异步信号事件

    3. threading

    线程管理

    4. multiprocessing

    进程管理

    十、 网络通信

    1. socket

    socket套接字网络通信相关

    十一、Internet

    1. urlparse

    解析url

    2. urllib系列

    对网络资源的访问

    3. base64

    用Ascii编码二进制数据,网络中常用

    4. cookie

    HTTP cookie相关

    5. json

    使用json数据时常用的模块

    十二、 Email

    smtplib用来发送邮件

    十三、本地化与国际化

    1. gettext

    消息编目

    2. locale

    本地化API

    十四、 开发工具

    1. traceback

    异常和栈信息

    2. pdb

    调试工具

    十五、 运行时特性

    1. site

    全站点配置

    2. sys

    系统特定的配置

    3. platform

    系统版本信息

    十六、 语言工具

    1. warnings

    非致命警告

    2. abc

    抽象基类

    3. dis

    字节码反汇编工具

    4. inspect

    检查现场对象

    5. exceptions

    内置的异常类

  • 相关阅读:
    jQuery实现动态搜索显示功能
    面试
    Struts1和Struts2的区别和对比(完整版)
    JAVA调用增删改的存储过程
    Spring MVC入门
    jQuery Ajax通用js封装
    js ==与===区别
    shell脚本awk
    C++对象模型初窥
    再见,2021
  • 原文地址:https://www.cnblogs.com/pyxiaomangshe/p/7764879.html
Copyright © 2020-2023  润新知