跳至主要內容

10. Python 标准库概览

小白debug大约 3 分钟

10. Python 标准库概览

今天我们要聊聊 Python 标准库,听起来高大上,实际上它是 Python 的“工具箱”,里面装满了各种各样的功能模块,可以帮我们做很多事情哦。

Python 标准库是啥?

首先,让我们来搞清楚,Python 标准库到底是啥?简单来说,它就是一堆已经写好的代码,供我们在编程过程中直接拿来用的。就好像你去修理自行车,不需要自己造个工具,直接用现成的工具就行。

我们都用标准库

你知道吗?很多你在 Python 中常用的功能,都是来自于这个标准库。比如说,你想操作文件,就用到了 os 模块;你想进行数据序列化,那就用 pickle;你要处理 JSON 数据,就需要 json

常用的标准库

  1. os 模块

    os 模块提供了许多与操作系统交互的函数,可以让你在 Python 中使用操作系统的功能。比如创建文件夹、删除文件等等。

    import os
    
    # 创建文件夹
    os.mkdir("my_folder")
    
    # 删除文件夹
    os.rmdir("my_folder")
    
  2. json 模块

    json 模块用于编码和解码 JSON 数据。在与 Web 服务通信或者读取配置文件时,经常会用到它。

    import json
    
    data = {'name': 'John', 'age': 30, 'city': 'New York'}
    json_data = json.dumps(data)  # 编码为JSON格式的字符串
    
  3. datetime 模块

    datetime 模块提供了处理日期和时间的类。你可以用它来进行日期和时间的计算、格式化等操作。

    from datetime import datetime
    
    now = datetime.now()
    print(now)
    
  4. random 模块

    random 模块提供了生成随机数的功能,可以用于模拟实验、游戏等场景。

    import random
    
    random_number = random.randint(1, 10)  # 生成1到10之间的随机整数
    
  5. re 模块

    re 模块是正则表达式的模块,可以用于文本的模式匹配和查找。

    import re
    
    pattern = r'\b\w+\b'  # 匹配单词
    text = "Hello, this is a test."
    matches = re.findall(pattern, text)
    
  6. math 模块

    math 模块提供了一些数学运算相关的函数,比如三角函数、对数函数等。

    import math
    
    sqrt_2 = math.sqrt(2)  # 开平方
    
  7. csv 模块

    csv 模块提供了读写 CSV 文件的功能,非常适用于处理表格数据。

    import csv
    
    with open('data.csv', mode='w', newline='') as file:
        writer = csv.writer(file)
        writer.writerow(['Name', 'Age', 'City'])
        writer.writerow(['John', '30', 'New York'])
    
  8. xml.etree.ElementTree 模块

    xml.etree.ElementTree 模块提供了处理 XML 文件的功能,让你可以轻松解析和创建 XML 文档。

    import xml.etree.ElementTree as ET
    
    root = ET.Element("root")
    child = ET.SubElement(root, "child")
    child.text = "This is some text"
    tree = ET.ElementTree(root)
    tree.write("file.xml")
    
  9. sys 模块

    sys 模块提供了一系列与 Python 解释器交互的变量和函数,比如获取命令行参数、退出程序等。

    import sys
    
    print(sys.argv)  # 获取命令行参数
    
  10. urllib 模块

    `urllib` 模块是用于处理 URL 的标准 Python 库,它包含了多个模块,比如 `urllib.request` 用于打开和读取 URL。
    
    ```python
    

    import urllib.request

    response = urllib.request.urlopen("http://www.baidu.com")
    html = response.read()
    print(html)
    ```
    

实战:用标准库实现一个简单的爬虫

现在,让我们动手实践一下吧!我们要用 Python 标准库中的 urllib 模块,来写一个简单的爬虫,获取百度首页的内容。

import urllib.request

def fetch_webpage(url):
    response = urllib.request.urlopen(url)
    webpage = response.read().decode('utf-8')
    return webpage

url = "http://www.baidu.com"
webpage_content = fetch_webpage(url)

print(webpage_content)

以上的代码会访问百度首页,并打印出网页的内容。是不是很神奇?这就是 Python 标准库的威力。

总结

通过这篇文章,我们了解了 Python 的标准库是什么,以及它能为我们提供哪些强大的功能模块。我们还通过实战例子,利用标准库中的 urllib 模块实现了一个简单的爬虫。

希望你现在对 Python 标准库有了更深入的认识。记住,它是你编程路上的得力助手,可以让你事半功倍!

训练营看视频