当前位置: 欣欣网 > 码农

一分钟入门Python标准库

2024-05-27码农
  1. 「sys」 - 提供访问解释器和它的环境的方法。

    import sys
    print(sys.argv) # 打印命令行参数

  2. 「os」 - 操作系统接口,允许你执行如文件读写、目录操作等操作。

    import os
    print(os.getcwd()) # 打印当前工作目录

  3. 「re」 - 正则表达式模块,用于字符串的匹配和解析。

    import re
    match = re.search(r'\d+''There are 123 apples')
    print(match.group()) # 输出匹配的数字 '123'

  4. 「math」 - 数学函数库,提供三角函数、指数、对数等。

    import math
    print(math.sqrt(16)) # 输出 4.0

  5. 「datetime」 - 处理日期和时间。

    from datetime import datetime
    now = datetime.now()
    print(now.strftime("%Y-%m-%d %H:%M:%S")) # 输出当前日期和时间

  6. 「json」 - 处理JSON数据。

    import json
    data = '{"name": "Alice", "age": 1}'
    obj = json.loads(data)
    print(obj['name']) # 输出 'Alice'

  7. 「collections」 - 提供额外的容器类型。

    from collections import defaultdict
    d = defaultdict(lambda'N/A')
    d['key'] = 'value'
    print(d['key']) # 输出 'value'

  8. 「itertools」 - 提供创建迭代器的函数。

    from itertools import permutations
    print(list(permutations('ABC'))) # 输出所有可能的排列

  9. 「functools」 - 高级函数操作。

    from functools import partial
    def greet(name, greeting='Hello'):
    returnf"{greeting}{name}!"
    greeter = partial(greet, greeting='Hi')
    print(greeter('World')) # 输出 'Hi, World!'

  10. 「operator」 - 函数,用于操作运算符。

    from operator import add
    print(add(53)) # 输出 8

  11. 「argparse」 - 解析命令行参数。

    import argparse
    parser = argparse.ArgumentParser(description='Test')
    parser.add_argument('--name'type=strhelp='Name to greet')
    args = parser.parse_args()
    print(f"Hello, {args.name}!") # 使用命令行参数问候

  12. 「shutil」 - 高级文件操作。

    import shutil
    shutil.copy('source.txt''destination.txt') # 复制文件

  13. 「hashlib」 - 安全散列和消息摘要算法。

    import hashlib
    hash_object = hashlib.sha1(b'test')
    print(hash_object.hexdigest()) # 输出 SHA-1 散列值

  14. 「random」 - 生成随机数。

    import random
    print(random.randint(110)) # 输出 1 到 10 之间的随机整数

  15. 「threading」 - 创建和管理线程。

    from threading import Thread
    def print_numbers():
    for i inrange(5):
    print(i)
    t = Thread(target=print_numbers)
    t.start()
    t.join()

  16. 「queue」 - 线程安全的队列。

    from queue import Queue
    q = Queue()
    q.put('task1')
    print(q.get()) # 输出 'task1'

  17. 「urllib」 - URL处理。

    from urllib.request import urlopen
    with urlopen('http://example.com'as response:
    print(response.read()) # 读取网页内容

  18. 「ssl」 - TLS/SSL套接字操作。

    import ssl
    context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
    with ssl.wrap_socket(socket.socket(), ssl_context=context) as s:
    s.connect(('www.example.com'443))

  19. 「socket」 - 低级网络接口。

    import socket
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.connect(('www.example.com'80))

  20. 「pickle」 - 序列化和反序列化Python对象。

    import pickle
    data = {'key''value'}
    serialized = pickle.dumps(data)
    print(pickle.loads(serialized)) # 反序列化数据

  21. 「gzip」 - 读写gzip压缩文件。

    import gzip
    with gzip.open('file.txt.gz''wb'as f:
    f.write(b'Some data')

  22. 「tarfile」 - 读写tar文件。

    import tarfile
    with tarfile.open('example.tar.gz''w:gz'as tar:
    tar.add('file.txt') # 添加文件到tar包

  23. 「logging」 - 事件日志系统。

    import logging
    logging.basicConfig(level=logging.INFO)
    logging.info('This is an info message')

  24. 「unittest」 - 单元测试框架。

    import unittest
    class TestStringMethods(unittest.TestCase):
    def test_upper(self):
    self.assertEqual('foo'.upper(), 'FOO')
    if __name__ == '__main__':
    unittest.main()

  25. 「pdb」 - 交互式源代码调试器。

    import pdb; pdb.set_trace() # 在这里设置断点
    print('This line will be executed')