python--文件OS模块基本操作(十八)

# 导入模块
'''
模块其实就是一个python文件。导入模块
(无论是用‘import 模块’还是用‘from 模块 import xxx)本质就是除if__name__=’__main’代码外,
把该模块里的所有内容从头到尾执行一遍。
'''
'''
Python os 模块提供了一个统一的操作系统接口函数, 这些接口函数通常是平台指定的,
os 模块能在不同操作系统平台(如 nt 或 posix)中的特定函数间自动切换,从而能实现跨平台操作。
'''

# os文件常用函数

import os  #导入 os模块
# 打印当前路径方法 getcwd()
print(os.getcwd())  # D:\PythonWorking\testDemo
# 改变工作目录 chdir(path)
# print(os.chdir('D:\\PythonWorking'))

# 列举指定目录中的文件
print(os.listdir('D:\\PythonWorking\\testDemo'))    # ['python002.py', 'python003.py']

# 创建单层目录 mkdir(path)
# print(os.mkdir('D:\\PythonWorking\\A')) # 创建一个A目录

# 递归创建多层目录 makedirs(path)
# print(os.makedirs('D:\\PythonWorking\\B\\C')) # 创建一个A、B、C三个目录

#删除文件 remove(path)
# print(os.remove('D:\\PythonWorking\\test.txt'))

# 删除单层目录 rmdir(path)
# print(os.rmdir('D:\\PythonWorking\\A')) #A目录被删除

#递归删除目录 removedirs(path)
# print(os.removedirs('D:\\PythonWorking\\B\\C')) # B、C目录被删除

#文件重命名 rename(old,new)  可以重命名文件和目录
# print(os.rename('D:\\PythonWorking\\test.txt','D:\\PythonWorking\\newtest.txt')) # 名字改为 newtest.txt

# 运行系统命令 system(command)
# os.system('calc')  #打开windows的计算器

# 当前目录 curdir
print(os.curdir)  # 结果返回一个点 .  代表当前路径
print(os.listdir(os.curdir))  # 打印当前路径下的文件
# 上一级目录 pardir
print(os.pardir)  # 结果返回两个点 ..  代表上一层路径
print(os.listdir(os.pardir))  # 打印上一层路径下的文件

# 输出操作系统特定的路径分隔符(win下为'\\' Linu下为'\n') os.sep
print(os.sep)
# 当前平台使用的行终止符(win下为'\r\n',linux下为'\n') os.linesep
print(os.linesep)
# 当前使用的系统名称(包括:'posix','nt''mac','os2','ce','java') os.name
print(os.name)

# os.path常用函数

# 去掉目录路径,单独返回文件名  os.path.basename(path)
print(os.path.basename('D:\\PythonWorking\\newtest.txt'))  # 只打印文件名称 newtest.txt

# 去掉文件名,单独返回目录路径
print(os.path.dirname('D:\\PythonWorking\\newtest.txt'))    # 只返回路径 D:\PythonWorking

# 将path1,path2各部分组合成一个路径名  os.path.join(path1,path2)
print(os.path.join('A','B','C'))  # A\B\C

# 分割文件与路径,如果完全使用目录,也会将最后一个目录作为文件分割。
print(os.path.split('D:\\PythonWorking\\newtest.txt')) # ('D:\\PythonWorking', 'newtest.txt')

# 返回指定文件的大小,单位字节
print(os.path.getsize('D:\\PythonWorking\\newtest.txt'))  # 6

# 返回指定文件最近访问的时间,显示浮点秒数,可用time模块的gmtime函数或localtime()换算
t1 = os.path.getatime('D:\\PythonWorking\\newtest.txt')
import time
t2 = time.gmtime(t1)
print(t2)
t3 = time.localtime()
print(t3)

# 返回文件的创建时间,显示浮点秒数,可用time模块的gmtime函数或localtime()换算  os.path.getctime
t1 = os.path.getctime('D:\\PythonWorking\\newtest.txt')
import time
t2 = time.gmtime(t1)
print(t2)
t3 = time.localtime()
print(t3)

# 返回文件最新修改时间,显示浮点秒数,可用time模块的gmtime函数或localtime()换算   os.path.getmtime
t1 = os.path.getmtime('D:\\PythonWorking\\newtest.txt')
import time
t2 = time.gmtime(t1)
print(t2)
t3 = time.localtime()
print(t3)

# 判断指定路径目录或文件是否存在  os.path.exists(path)
t1 = 'D:\\PythonWorking\\newtest.txt'
print(os.path.exists(t1))  # True

# 判断指定路径是否为绝对路径 os.path.isabs(path)
t1 = 'D:\\PythonWorking\\newtest.txt'
print(os.path.isabs(t1))  # True

# 判断指定目录是否存在,且是一个目录  os.path.isdir(path)
t1 = 'D:\\PythonWorking\\newtest.txt'
print(os.path.isdir(t1))  # False
# 判断指定路径是否存在,且是一个文件  os.path.isfile(path)
t1 = 'D:\\PythonWorking\\newtest.txt'
print(os.path.isfile(t1)) # True
# 判断指定路径是否存在,且是一个符号链接  os.path.islink(path)
t1 = 'D:\\'
print(os.path.islink(t1)) # False
# 判断指定路径是否存在,且是一个挂载点 os.path.ismount(path)
t1 = 'D:\\'
print(os.path.ismount(t1)) # True

# 判断path1和path2两个路径是否指向同一个文件
t1 = 'D:\\PythonWorking\\newtest.txt'
t2 = 'D:\\PythonWorking\\newtest.txt'
print(os.path.samefile(t1,t2))  # True