python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python常用内置模块

Python常用内置模块日志、随机数、时间、OS与JSON详解

作者:毋语天

本文介绍了Python开发中常用的五大模块:日志、随机数、时间、系统文件操作及JSON数据处理,详细讲解了各模块的的常见函数及其应用场景,需要的朋友可以参考下

在 Python 开发中,内置标准库提供了大量开箱即用的实用模块,能极大提升开发效率。本文集中梳理五大常用模块——logging / loguru(日志)random(随机数)time(时间)、**os(系统交互)**和 json(数据序列化),覆盖日常使用频率最高的函数与用法。

一、日志模块

日志是排查问题的关键手段,Python 自带的 logging 是标准解决方案,而第三方库 loguru 则进一步简化了日志操作。

1. logging(标准库)

logging 内置五种日志级别,从低到高依次为:

级别数值含义
DEBUG10详细调试信息
INFO20正常运行信息
WARNING30警告,但程序仍可运行
ERROR40错误,部分功能受影响
CRITICAL50严重错误,程序可能崩溃

基础用法:

import logging

logging.debug("这是调试信息")
logging.info("程序启动")
logging.warning("磁盘空间不足")
logging.error("数据处理失败")
logging.critical("服务宕机")

默认输出到控制台,且只有 WARNING 及以上级别会被打印。可以通过 basicConfig 调整输出格式、等级和文件路径。

2. loguru(更友好的日志库)

loguru 是第三方库,以更简洁的 API 和更美观的输出著称。

安装:

pip install loguru

导入与使用:

from loguru import logger

logger.debug("调试信息")
logger.info("普通信息")
logger.success("成功信息")   # loguru 特有
logger.warning("警告")
logger.error("错误")
logger.critical("严重错误")

loguru 的亮点功能:

logger.remove()                # 移除默认 handler
logger.add("app.log", rotation="1 MB")  # 文件日志,自动轮转

二、random 模块

随机数在测试、模拟、抽奖等场景中非常常用。

import random
print(random.randint(1, 100))   # 1~100 的随机整数
print(random.random())          # 0.0 ~ 1.0(不含 1.0)
colors = ['red', 'blue', 'green']
print(random.choice(colors))    # 随机返回一种颜色
nums = [1, 2, 3, 4, 5, 6]
print(random.sample(nums, 3))   # eg: [5, 2, 4]

三、time 模块

处理时间相关的操作,常用函数如下:

import time
print(time.time())   # 1680000000.123456
t = time.localtime()
print(t.tm_year, t.tm_mon, t.tm_mday)  # 年 月 日
print("开始等待...")
time.sleep(2)
print("两秒后继续")

四、os 模块

os 模块提供了与操作系统交互的各种功能,常用于文件和目录操作。

import os
print(os.getcwd())
files = os.listdir(".")
print(files)
os.system("ls -l")   # Linux/macOS
os.system("dir")     # Windows

示例:

f = os.popen("echo Hello")
output = f.read()
print(output)   # Hello

五、json 模块

处理 JSON 数据是前后端交互的核心环节,Python 的 json 模块提供了高效的序列化与反序列化支持。

1. 序列化(Python → JSON)

import json
data = {"name": "Alice", "age": 25}
json_str = json.dumps(data)
print(json_str)   # '{"name": "Alice", "age": 25}'
with open("data.json", "w") as f:
    json.dump(data, f)

2. 反序列化(JSON → Python)

json_str = '{"name": "Bob", "score": 92.5}'
obj = json.loads(json_str)
print(obj["name"])   # Bob
with open("data.json", "r") as f:
    data = json.load(f)

3. 数据类型转换对照表

PythonJSON
dictobject
list, tuplearray
strstring
int, floatnumber
Truetrue
Falsefalse
Nonenull

注意:元组在序列化时会转为 JSON 数组,反序列化回来变成列表。

小结

本文整理的五大模块是 Python 日常开发中的高频工具:

建议在实际项目中多加练习,遇到陌生函数时可以查阅官方文档或使用 help() 查看详细说明。掌握这些模块,你的 Python 开发效率会再上一个台阶。

以上就是Python常用内置模块日志、随机数、时间、OS与JSON详解的详细内容,更多关于Python常用内置模块的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文