Python中常见的模块
为了解决维护问题,一般情况下,在一个完整的项目中,会将特定的功能分组,分别放到不同的文件中,在使用的过程中,可以单独维护,各个不同的文件之间互不影响,每个.py文件就被称为一个模块,通过结合包的使用来组织文件。封装思路: 函数 => 类 => 模块 => 包 => 项目优点:代码演示:代码演示:代码演示:总结:在python中,每个py文件其实都是一个模块,如果跨模块调用函数,则采用导入的方式将不
为了解决维护问题,一般情况下,在一个完整的项目中,会将特定的功能分组,分别放到不同的 文件中,在使用的过程中,可以单独维护,各个不同的文件之间互不影响,每个.py文件就被称为 一个模块,通过结合包的使用来组织文件。
封装思路: 函数 => 类 => 模块 => 包 => 项目
优点:
- 提高了代码的可维护性
- 提高了代码的复用性【当一个模块被完成之后,可以在多个文件中使用】
- 引用其他的模块【第三方模块】
- 避免函数名和变量的命名冲突
# 模块
'''
模块就是一个python文件模块分类:
1.内置模块: python 本身提供的模块 比如:os random time
2.自定义模块: 我们自己根据项目的需求,自己书写的模块
3.第三方模块: 别人写好的具有特殊功能的模块
a.在使用第三方模块的时候,需要先安装 比如:numpy pandas flask
b.导入和使用
'''
# 模块导入的方式:
# 第一种: import 模块名
# 第二种: from 模块名 import 模块名里面的方法
# 示例:
# 导入内置模块r import os
from random import randint
1、自定义import模块
代码演示:
# 导入自定义模块
# import module1
# 使用自定义模块的变量
# print(module1.name) # print(module1.age) # print(module1.love)
2、自定义from-import模块
代码演示:
from module1 import *
3、自定义from-import*模块
代码演示:
# * 表示通配符 模糊导入,使用*号后,可以直接使用模块中的所有的内容,比如变量,方法等(不推荐 使用)
'''
from module1 import * print(name) print(age) print(love)
'''
# 精确导入 (推荐)
from module1 import name,age print(name)
print(age)
# 给模块起别名 as
import random as r
# print(r.randint(1,10))
总结:在python中,每个py文件其实都是一个模块,如果跨模块调用函数,则采用导入的方式将不同的功能进行划分,调用函数的时候相对比较方便的。
4、第三方模块
第三方模块: 别人写好的具有特殊功能的模块
a.在使用第三方模块的时候,需要先安装 比如:numpy pandas flask b.导入和使用
更新pip 版本
python -m pip install --upgrade pip
第一种操作第三方模块的方式:
pip 专门用来安装和卸载python相关扩展的工具
pip -V 查看当前pip的版本号
pip list 查看当前项目安装的所有的扩展
pip install 扩展名(包名) 安装指定的包
一般我们在安装包的时候,会使用国内的镜像豆瓣的镜像源 s
安装flask框架
pip install flask -i https://pypi.doubanio.com/simple/
练习: 尝试去安装 numpy pandas flask requests lxml
pip uninstall 扩展名(包名)
pip uninstall flask
pip show 扩展名(包名) 第二种操作第三方模块的方式:
通过pycharm编辑器: 文件->设置->项目->python解释器:
+ 表示安装包
- 表示卸载包 x
5、time时间模块
代码演示:
import time
# 获取时间戳 从1970年1月1日0时0分0秒到现在经过的秒数
time.time()
# 延迟程序多长时间执行一次
time.sleep()
6、datetime日期模块【掌握】
是对time模块的封装,比time模块更加全面
import datetime # 获取当前的日期对象
date = datetime.datetime.now() print(date)
# 设置日期对象
date1 = datetime.datetime(year=2022,month=11,day=10,hour=10,minute=23,second=11)
print(date1)
print(type(date1)) # <class 'datetime.datetime'>
print(date1.year,date1.month,date1.day) # 年 月 日print(date1.hour,date1.minute,date1.second) # 时 分 秒
print(date1.date()) # 2022-11-10
print(date1.time()) # 10:23:11
# 将datetime.datetime类型转换为字符串
# strftime() 将日期对象转换为字符串
print(type(date1.strftime("%Y-%m-%d %H:%M:%S"))) # <class 'str'> print(date1.strftime("%Y{}%m{}%d{}").format("年","月","日")) #2022年11月10日
# strptime() 将字符串转换为日期对象
str1 = "2021-07-27 10:40:21"
print(type(datetime.datetime.strptime(str1,'%Y-%m-%d %H:%M:%S'))) # <class 'datetime.datetime'>
# timestamp() 日期对象转换为时间戳da daimestamp()) # 1668046991.0
# fromtimestamp() 时间戳转换为日期对象
print(datetime.datetime.fromtimestamp(1668046991.0)) # 2022-11-10 10:23:11
# 时间差
d1 = datetime.datetime(2022,1,13) d2 = datetime.datetime(2021,10,1) print(d1 - d2)
print(d2 - d1)
# timedelta 代表两个日期之间的时间差
dt = datetime.timedelta(days=5,hours=8) print(d1 + dt) # 2022-01-18 08:00:00
print(d1 - dt) # 2022-01-07 16:00:00
'''
# %y 两位数的年份表示(00-99)
# %Y 四位数的年份表示(000-9999)
# %m 月份(01-12)
# %d 月内中的一天(0-31)
# %H 24小时制小时数(0-23) # %I 12小时制小时数(01-12) # %M 分钟数(00-59)
# %S 秒(00-59)
# %a 本地简化星期名称# %A 本地完整星期名称# %b 本地简化的月份名称# %B 本地完整的月份名称
# %c 本地相应的日期表示和时间表示
# %j 年内的一天(001-366)
# %p 本地A.M.或P.M.的等价符
# %U 一年中的星期数(00-53)星期天为星期的开始
# %w 星期(0-6),星期天为星期的开始
# %W 一年中的星期数(00-53)星期一为星期的开始
# %x 本地相应的日期表示# %X 本地相应的时间表示# %% %号本身
7、os模块
用于获取系统的功能,主要用于操作文件或者文件夹
代码演示:
import os
# listdir 查看指定目录下面所有的文件夹和文件
# r"" 将字符串中的特殊字符进行转义print(os.listdir(r"C:\Users\chenbingjie\Desktop\python2105\day11"))
# ['test.py', '代码', '作业', '昨日作业', '笔记', '视频']
# 当前目录 .
# 上级目录 ..
# curdir 表示当前目录
print(os.curdir) # .
# getcwd() 获取当前路径
print(os.getcwd()) # C:\Users\chenbingjie\Desktop\python2105\day11\代码
# mkdir() 创建文件夹 (不能创建已经存在的文件夹) # os.mkdir("测试")
# makedirs() 创建多层文件夹
# os.makedirs("a/b/c")
# rmdir() 删除文件夹 (只能删除空文件夹) # os.rmdir("demo")
# rename() 重命名文件夹或者重命名文件
# os.rename("a","a11")
# ./表示当前目录 ../表示上级目录
# os.rename("../test.py","../demo.py")
# remove() 删除文件
# os.remove("demo.py")
# os.path.join() 拼接路径print(os.path.join(r"C:\Users\chenbingjie\Desktop\python2105\day11\ 代 码","func.py"))
# os.path.split() 拆分路径
path = r"C:\Users\chenbingjie\Desktop\python2105\day11\代码\1栈和队列.py" print(os.path.split(path))
# os.path.splitext() 拆分文件和扩展名
print(os.path.splitext(path))
# os.path.abspath 获取绝对路径
print(os.path.abspath("func.py"))
# os.path.getsize() 获取文件大小
print(os.path.getsize("func.py"))
# os.path.isfile() 判断是否是文件,若是文件返回True 若不是文件 返回False print(os.path.isfile("func.py")) # True
# os.path.isdir() 判断是否是文件夹, 若是文件夹 返回True 若不是文件夹 返回False
print(os.path.isdir("a11")) # True
# os.path.exists() 判断文件或者文件夹是否存在 若存在返回True 若不存在 返回False print(os.path.exists("demo.py")) #False
# os.path.dirname 获取路径的文件夹部分
print(os.path.dirname(path))
# os.path.basename 获取路径的文件名部分
print(os.path.basename(path))
重点掌握:
1.获取指定路径下的文件夹和文件
os.listdir()
2.创建目录(目录存在,不能创建)
os.mkdir()
3.创建多层目录
os.makedirs()
4.删除目录
os.rmdir()
5.删除文件
os.remove()
6.重命名文件或者重命名文件夹
os.rename()
更多推荐
所有评论(0)