python中的模块

简介:在编写程序时,经常会引入别人写好的模块。有的模块是Python自带的(内置模块),你无需安装就能直接引用,而有的模块则是由Python生态系统里的第三方工程师提供的,你需要通过pip安装之后,才能进行使用。由于在编写Python程序的时候会经常引用别人编写好的模块,因此你应该花一些时间来了解与之有关的知识点。为了让你对Python中的模块有一个清晰的认识,这篇文章将从以下几步来展开:

文章目录

    • 1️⃣ 如何导包
    • 2️⃣ 模块分类
      • 内置模块
        • ✒️os模块与os.path模块
        • ✒️sys模块
        • ✒️time模块
        • ✒️math模块
        • ✒️random模块
        • ✒️re模块
      • 第三方模块
        • ✒️常见第三方模块
      • 自定义模块

1️⃣ 如何导包

在使用模块前,要先导入模块。

方式一: import ...

方式二:from ... import ...

2️⃣ 模块分类

内置模块

python 自带的模块

✒️os模块与os.path模块

os — 多种操作系统接口
os.path — 常用路径操作

模块 作用
os.remove()或os.unlink() 删除文件
os.rename() 重命名文件
os.listdir() 列出指定目录下所有文件
os.chdir() 改变当前工作目录
os.getcwd() 获取当前文件路径
os.mkdir() 新建目录
os.rmdir() 删除空目录
shutil.rmtree() 删除非空目录, 使用
os.makedirs() 创建多级目录
os.removedirs() 删除多级目录
os.stat(file) 获取文件属性
os.chmod(file) 修改文件权限
os.utime(file) 修改文件时间戳
os.name(file) 获取操作系统标识
os.system() 执行操作系统命令
os.execvp() 启动一个新进程
os.fork() 获取父进程ID,在子进程返回中返回0
os.execvp() 执行外部程序脚本(Uinx)
os.spawn() 执行外部程序脚本(Windows)
os.access(path, mode) 判断文件权限(详细参考cnblogs)
os.wait() 暂时未知
os.path.split(filename) 将文件路径和文件名分割(会将最后一个目录作为文件名而分离)
os.path.splitext(filename) 将文件路径和文件扩展名分割成一个元组
os.path.dirname(filename) 返回文件路径的目录部分
os.path.basename(filename) 返回文件路径的文件名部分
os.path.join(dirname,basename) 将文件路径和文件名凑成完整文件路径
os.path.abspath(name) 获得绝对路径
os.path.splitunc(path) 把路径分割为挂载点和文件名
os.path.exists() 判断文件或目录是否存在
os.path.isabs() 如果path是绝对路径,返回True
os.path.normpath(path) 规范path字符串形式
os.path.realpath(path) 返回path的真实路径
os.path.relpath(path[, start]) 从start开始计算相对路径
os.path.normcase(path) 转换path的大小写和斜杠
os.path.isdir() 判断name是不是一个目录,name不是目录就返回false

✒️sys模块

系统相关的参数和函数

模块 描述
sys.argv 命令行参数List,第一个元素是程序本身路径
sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.modules.keys() 返回所有已经导入的模块列表
sys.modules 返回系统导入的模块字段,key是模块名,value是模块
sys.exit(n) 退出程序,正常退出时exit(0)
sys.hexversion 获取Python解释程序的版本值,16进制格式如:0x020403F0
sys.version 获取Python解释程序的版本信息
sys.platform 返回操作系统平台名称
sys.stdout 标准输出
sys.stdout.write(‘aaa‘) 标准输出内容
sys.stdout.writelines() 无换行输出
sys.stdin 标准输入
sys.stdin.read() 输入一行
sys.stderr 错误输出

✒️time模块

time — 时间的访问和转换

模块 描述
time.ctime( ) 时间的字符串
time.time( ) 返回当前时间的时间戳
time.sleep( ) 延时多少秒

✒️math模块

math — 数学函数

模块 描述
ceil 取大于等于x的最小的整数值,如果x是一个整数,则返回x
copysign 把y的正负号加到x前面,可以使用0
cos 求x的余弦,x必须是弧度
degrees 把x从弧度转换成角度
e 表示一个常量
exp 返回math.e,也就是2.71828的x次方
expm1 返回math.e的x(其值为2.71828)次方的值减1
fabs 返回x的绝对值
floor 取小于等于x的最大的整数值,如果x是一个整数,则返回自身
fsum 对迭代器里的每个元素进行求和操作
gcd 返回x和y的最大公约数

✒️random模块

random — 生成伪随机数

模块 描述
random.random() 函数是这个模块中最常用的方法了,它会生成一个随机的浮点数,范围是在0.0~1.0之间。
random.uniform() 正好弥补了上面函数的不足,它可以设定浮点数的范围,一个是上限,一个是下限。
random.randint() 随机生一个整数int类型,可以指定这个整数的范围。
random.choice() 可以从任何序列,比如list列表中,选取一个随机的元素返回,可以用于字符串、列表、元组等。
random.shuffle()。 如果你想将一个序列中的元素,随机打乱的话可以用这个函数方法 。
random.sample() 可以从指定的序列中,随机的截取指定长度的片断,不作原地修改。

✒️re模块

匹配正则表达式

模块 描述
re.match(pattern, string, flags=0) 从字符串的起始位置匹配,如果起始位置匹配不成功的话,match()就返回none
re.search(pattern, string, flags=0) 扫描整个字符串并返回第一个成功的匹配
re.findall(pattern, string, flags=0) 找到RE匹配的所有字符串,并把他们作为一个列表返回
re.sub(pattern, repl, string, count=0, flags=0) 替换匹配到的字符串
re.finditer(pattern, string, flags=0) 找到RE匹配的所有字符串,并把他们作为一个迭代器返回

第三方模块

第三方模块是别人开发的模块,需要第三方模块可以到官网下载,也可以使用命令行下载

PyPI · The Python Package Index

pip install pygame pygame是模块名

✒️常见第三方模块

模块 作用
Requests 请求
wxPython Python的一个GUI(图形用户界面)工具
Pillow 它是PIL(Python图形库)的一个友好分支
SQLAlchemy 数据库的库
NumPy 数学方法
Pygame 游戏
Pyglet 3D动画和游戏开发引擎
pywifi 连接wifi
pytest 测试
psutil 运维
opencv-python 计算机视觉

自定义模块

如果内置模块和第三方模块都不能实现效果,可以根据需求自定义模块

例:

def addnum(num1,num2)
	print(num1 + num2)

文件名number.py

import number
number.addnum(1,2)   #结果为1+2=3

你可能感兴趣的:(精通python,python,pip)