Python中常见的模块——OS 和 time 模块
Posted 神的孩子都在歌唱
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中常见的模块——OS 和 time 模块相关的知识,希望对你有一定的参考价值。
前言:
作者:神的孩子在歌唱
这是我听老师讲课做的笔记
大家好,我叫陈运智,大家可以叫我小智,加好友请看主页
一. 模块介绍
-
简单理解:相当于一个工具包,就是封装了一堆函数的py文件,如果使用到某个函数的时候调用这个包就可以了,不用自己在编写一堆代码
-
导入方法
(1)import 模块
(2)导入模块中的函数from 模块 import 函数
-
注意:import导入的时候模块是要在当前目录的
-
取别名
as
:模块名过长可以通过as取别名
二. 常见模块
2.1 os模块
- 作用:常用于对文件进行重命名、删除、获取路径等一些操作
比如我在d盘创建了test文件夹
代码练习:
import os
import shutil
#os.rename('text_备份2.txt','text_重命名.txt')#重命名文件
#os.remove('文件名')#删除文件,如果不存在就会报错
#os.mkdir('textCJ')#创建文件夹
#os.rmdir('textCJ')#删除文件夹,只能删除空目录
#os.mkdir('d:/python编程')#在D盘下创建文件夹,还可以一级级创建/,不能连续创建
#os.rmdir('d:/python编程')
#os.makedirs('d:/p/d/f')#多级文件创建
#shutil.rmtree('d:p/d/f')#删除非空目录文件shutil
print('当前路径:',os.getcwd())#获取当前目录
#print(os.path)
#os.path.join(os.path.join(os.getcwd(),'第十一天'))#路径拼接
#获取python中的目录列表,老版本
#print(os.listdir('d:/'))
print('*'*15)
#新版本
with os.scandir('D:/test/') as f:#scandir和with一起使用,上下文管理器会在迭代器遍历完成后自动释放资源
for item in f:
print(item.name)
print('*'*15)
f='D:/test/'
for item in os.listdir(f):
if os.path.isfile(os.path.join(f,item)):#判断文件,.isdir是判断目录
print('只输出文件:',item)
2. 基本操作命令
方法 | 解释 |
---|---|
os.getcwd() | 获取当前工作目录,即当前python脚本工作的目录路径 |
os.chdir(“dirname”) | 改变当前脚本工作目录;相当于shell下cd |
os.curdir | 返回当前目录: (’.’) |
os.pardir | 获取当前目录的父目录字符串名:(’…’) |
os.makedirs(‘dir1/dir2’) | 可生成多层递归目录 |
os.removedirs(‘dirname1’) | 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推 |
os.mkdir(‘dirname’) | 生成单级目录;相当于shell中mkdir dirname |
os.rmdir(‘dirname’) | 删除单级空目录,若目录不为空则无法删除,报错 |
os.listdir(‘dirname’) | 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印 |
os.remove() | 删除一个文件 |
os.rename(“oldname”,“new”) | 重命名文件/目录 |
os.stat(‘path/filename’) | 获取文件/目录信息 |
os.sep | 操作系统特定的路径分隔符,win下为"\\",Linux下为"/" |
os.linesep | 当前平台使用的行终止符,win下为"\\t\\n",Linux下为"\\n" |
os.pathsep | 用于分割文件路径的字符串 |
os.name | 字符串指示当前使用平台。win->‘nt’; Linux->‘posix’ |
os.system(“bash command”) | 运行shell命令,直接显示 |
os.environ | 获取系统环境变量 |
os.path.abspath(path) | 返回path规范化的绝对路径 |
os.path.split(path) | 将path分割成目录和文件名二元组返回 |
os.path.dirname(path) | 返回path的目录。其实就是os.path.split(path)的第一个元素 |
os.path.basename(path) | 返回path最后的文件名。如何path以/或\\结尾,那么就会返回空值。即os.path.split(path)的第二个元素 |
os.path.exists(path) | 如果path存在,返回True;如果path不存在,返回False |
os.path.isabs(path) | 如果path是绝对路径,返回True |
os.path.isfile(path) | 如果path是一个存在的文件,返回True。否则返回False |
os.path.isdir(path) | 如果path是一个存在的目录,则返回True。否则返回False |
os.path.join(path1[, path2[, …]]) | 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略 |
os.path.getatime(path) | 返回path所指向的文件或者目录的最后存取时间 |
os.path.getmtime(path) | 返回path所指向的文件或者目录的最后修改时间 |
2.2 time、datetime模块
- time模块
import time
time.sleep(6) # 程序暂停6s
print(time.time())#获取时间戳
print(time.localtime())#获取本地时间
print(time.strftime("%Y-%m-%d %H:%M:%S 星期%w",time.localtime()))#格式化输出
输出:
时间格式化符号
- %b 本地简化的月份名称
- %B 本地完整的月份名称
- %c 本地相应的日期表示和时间表示
- %j 年内的一天(001-366)
- %p 本地A.M.或P.M.的等价符
- %U 一年中的星期数(00-53)星期天为星期的开始
- %w 星期(0-6),星期天为星期的开始
- %W 一年中的星期数(00-53)星期一为星期的开始
- %x 本地相应的日期表示
- %X 本地相应的时间表示
- %Z 当前时区的名称
- %% %号本身
- datatime模块
主要用于时间计算
datetime.date.fromtimestamp(time.time())#装换时间戳
#输出:2021-06-03
加减时间计算
import datetime
print(datetime.datetime.now())
#当前时间加上1天2小时30分.
print(datetime.datetime.now() + datetime.timedelta(days=1,hours=2,minutes=30))
输出:
2021-06-05 10:32:40.462593
2021-06-06 13:02:40.462593
本人博客:https://blog.csdn.net/weixin_46654114
转载说明:跟我说明,务必注明来源,附带本人博客连接。
请给我点个赞鼓励我吧
以上是关于Python中常见的模块——OS 和 time 模块的主要内容,如果未能解决你的问题,请参考以下文章