Python常用的模块非常多,主要分为内置模块和第三方模块两大类,且不同模块应用场景不同又可以分为文本类、数据结构类、数学运算类、文件系统类、爬虫类、网络通讯类等多个类型。
大家常用的内置模块比如:math、re、datetime、urllib、os、random等,第三方模块比如pandas、numpy、requests、matplotlib等。
模块是将复杂的、同一应用领域的功能代码进行封装,你只需要调用接口,输入相应参数,便可以轻松拿到结果,类似瑞士军刀、万能工具箱。
内置模块,顾名思义就是Python软件内嵌的模块,无需额外安装。
想要了解详细的内置模块,最好去Python官网看,挺详细的
https://docs.python.org/zh-cn/3/library/index.html
你也可以在代码行输入print(help(modules)),会显示全部的内置模块
这里举几个常用的内置模块,并附上代码:
「math 模块」
用来进行数学计算,它提供了很多数学方面的专业函数,适合科研、算法
import math# 计算平方根sqrt_value = math.sqrt(25)print("Square Root:", sqrt_value)# 计算正弦值sin_value = math.sin(math.radians(30))print("Sine Value:", sin_value)
「re 模块」
正则表达式在Python中的扩展实现,该模块能支持正则表达式几乎所有语法,对于文本处理来说必不可少
import re# 查找匹配的字符串pattern = r"\d+"text = "There are 123 apples and 456 oranges."matches = re.findall(pattern, text)print("Matches:", matches)
「datetime 模块」
用于处理日期和时间,这个模块非常实用!!!
import datetime# 获取当前日期和时间current_datetime = datetime.datetime.now()print("Current Date and Time:", current_datetime)# 格式化日期时间formatted_datetime = current_datetime.strftime("%Y-%m-%d %H:%M:%S")print("Formatted Date and Time:", formatted_datetime)
「urllib 模块」
用于进行网络请求,获取网页HTML,所谓的爬虫就是这个模块
import urllib.request# 发起HTTP GET请求response = urllib.request.urlopen("https://www.example.com")html = response.read()print("HTML Content:", html[:100])
「os 模块」
提供了与操作系统交互的功能,比如文件和目录操作
import os# 获取当前工作目录current_dir = os.getcwd()print("Current Directory:", current_dir)# 列出目录中的文件和子目录files_and_dirs = os.listdir(current_dir)print("Files and Directories:", files_and_dirs)
「random 模块」
用于生成伪随机数
import random# 生成随机整数random_integer = random.randint(1, 10)print("Random Integer:", random_integer)# 从列表中随机选择元素random_element = random.choice(["apple", "banana", "cherry"])print("Random Element:", random_element)
「json 模块」
专门用来处理 JSON 格式数据
import json# 将字典转换为 JSON 格式的字符串data = {"name": "Alice", "age": 25}json_string = json.dumps(data)print("JSON String:", json_string)# 将 JSON 格式的字符串转换为字典parsed_data = json.loads(json_string)print("Parsed Data:", parsed_data)
「collections 模块」
提供了一些除list、dict之外有用的数据容器,比如 defaultdict、Counter 等
from collections import defaultdict, Counter# 创建默认字典word_counts = defaultdict(int)words = ["apple", "banana", "apple", "cherry", "banana", "apple"]for word in words: word_counts[word] += 1print("Word Counts:", word_counts)# 统计元素出现的次数element_counts = Counter(words)print("Element Counts:", element_counts)
「csv 模块」
专门用于处理逗号分隔值(CSV)文件
import re# 查找匹配的字符串pattern = r"\d+"text = "There are 123 apples and 456 oranges."matches = re.findall(pattern, text)print("Matches:", matches)
「sys 模块」
提供了与Python解释器交互的功能,例如访问命令行参数
import sys# 获取命令行参数arguments = sys.argvprint("Command-line Arguments:", arguments)
Python之所以这么受欢迎,很大一部分原因得益于强大的第三方工具生态,几乎各个领域都有对应的模块可以使用。
比如
其他各领域都有相应的模块可以使用,这里就不一一列举
总得来说,Python常用的模块非常多,还是要根据你的使用场景来选择,大家可以去Python官网、github上找相应的模块及教程。