跳转至

内置模块

https://docs.python.org/zh-cn/3.9/library/index.html

random

import random

# 随机返回区间内一个元素,不包括右边
random.randint(1,10)

# 从一个非空序列中随机选出一个元素
random.choice(_list)

# 从一个非空序列中随机选出n(n要小于集合个数)个元素
random.sample(_list, n)  # 返回list

# 在等差数列中随机选一个数
random.randrange(0,100,10)

# 生成两个数之间的随机数
random.uniform(10,20)

# 随机打乱列表的顺序
random.shuffle(t)

os

os模块封装了操作系统的目录和文件操作
注意:有些在os模块中,有些在os.path模块中
另外:shutil 模块是对os模块的一个补充

import os

os.xxx

os.name  # 操作系统类型(posix代表Linux/Unix/Mac OS X,nt代表Windows)
os.uname()  # 获取详细操作系统信息(Windows不支持)
os.environ  # 环境变量
os.environ.get('PATH')  # 获取PATH变量的值,不存在则报错

os.getenv('X', default=None)  # 注意,获取的变量类型是字符串类型
os.mkdir()  # 创建目录
os.rmdir()  # 删除目录

os.rename()  # 重命名文件
os.remove()  # 移除文件

os.path.xxx

os.path.dirname(__file__)  # 获取文件的目录
os.path.dirname(os.path.dirname(__file__))  # 获取上级目录
os.path.abspath(__file__)  # 获取文件的绝对路径/完整路径,带文件名

os.path.splitext('/path/to/file.txt')  # ('/path/to/file', '.txt')

base_path = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
# 检测文件路径是否存在,不存在则新建
result_path = "/xxx"
if not os.path.exists(result_path):
    os.mkdir(result_path)
import os

filename = "./tmp/test.log"

os.makedirs(os.path.dirname(filename), exist_ok=True)
with open(filename, "wb") as f:
    pickle.dump(cookies, f)

os.system()

os.system("bash command")  # 运行shell命令

os.walk()

import os

# 基础方法
for dirpath, dirnames, filenames in os.walk(path):
    print(dirpath, dirnames, filenames)
    """
    har ['haha'] ['11.har']
    har/haha [] ['22.har']
    """

# 获取路径下指定后缀的所有文件名
def get_files(path, file_type=None):
    _list = []
    for dirpath, dirnames, filenames in os.walk(path):
        for name in filenames:
            _list.append(os.path.join(dirpath, name))

    if file_type:
        file_list = []
        for i in _list:
            if os.path.splitext(i)[1] == file_type:
                file_list.append(i)
        return file_list

    return _list

get_files("har")  # ['har/v11.har', 'har/1.txt', 'har/haha/22.har']
get_files("har", ".har")  # ['har/v11.har', 'har/haha/22.har']

sys

import sys

# 查看默认编码
sys.getdefaultencoding()  # Py3默认utf-8,Py2默认ascii

# 获取引入模块时会搜索哪些路径
sys.path

# 获取命令行传入的参数列表
sys.argv

ast

import ast

_str = "_dcit"
# 如果_str="faker.name()"这种非合法python类型,则会报错
# 另外_str=""也会报错
_dcit = ast.literal_eval(_str)

logging

import logging

logging.basicConfig(filename=file_path, level=logging.INFO, format='%(asctime)s %(message)s')
logging.debug("细节信息,仅当诊断问题时适用")
logging.info("确认程序按预期运行")
logging.warning("表明有已经或即将发生的意外(例如:磁盘空间不足)。程序仍按预期进行")
logging.error("由于严重的问题,程序的某些功能已经不能正常执行")
logging.critical("严重的错误,表明程序已不能继续执行")

webbrowser

快速启动浏览器打开指定网站

import webbrowser

webbrowser.open("http://baidu.com")

math

https://docs.python.org/zh-cn/3.9/library/math.html


最后更新: 2022-07-01