python os.path常用方法

测试环境: python 2.7

使用os相关,注意引用:import os

使用time相关,注意引用:import datetime

官网:https://docs.python.org/3/library/os.path.html

os.path.abspath

# 返回绝对路径
print(os.path.abspath('path.py'))                       # G:codeDemopath.py
print(os.path.abspath('../Demo\path.py'))              # G:codeDemopath.py
print(os.path.abspath('G:codeDemopath.py'))          # G:codeDemopath.py

os.path.isabs

# 是否为绝对路径,若是True,否则False
print(os.path.isabs('path.py'))                         # False
print(os.path.isabs('G:codeDemopath.py'))            # True

os.path.split

# 将路径分割为目录和文件名
print(os.path.split('G:codeDemopath.py'))             # ('G:\code\Demo', 'path.py')

os.path.dirname

# 返回文件目录
print(os.path.dirname('G:codeDemopath.py'))           # G:codeDemo

# 返回当前文件目录
curpath = os.getcwd()
print(curpath )

# 返回curpath的父目录
parentpath = os.path.dirname(curpath)

# 返回parentpath的父目录
grandparentpath = os.path.dirname(parentpath)

os.path.isdir

# 判定是否是一个存在的目录,若是True,否则False
print(os.path.isdir('path.py'))                         # False
print(os.path.isdir('HH:code'))                        # False
print(os.path.isdir('C:\windows'))                     # True

os.path.basename

# 返回文件名
print(os.path.basename('../Demo\path.py'))             # path.py
print(os.path.basename('G:codeDemopath.py'))         # path.py

os.path.splitext

# 分离文件名和后缀
print(os.path.splitext('path.py'))                     # ('path', '.py')
print(os.path.splitext('G:codeDemopath.py'))        # ('G:\code\Demo\path', '.py')

os.path.isfile

# 判定是否是一个存在的文件,若是True,否则False
print(os.path.isfile('Fuck.text'))                     # False
print(os.path.isfile('path.py'))                       # True
print(os.path.isfile('G:codeDemopath.py'))          # True

os.path.commonprefix

# 返回多个路径中,所有path共有的路径(注意:路径一定要存在,否则会返回空)
pathTab = ['G:codeLuaProject', 'G:codeDemo', 'G:codecsdDemo']     
print(os.path.commonprefix(pathTab))                    # G:code

os.path.join

# 将目录和文件名组合在一起
print(os.path.join('G:CodeDemo', 'path.py'))          # G:CodeDemopath.py
print(os.path.join('G:codepathCode','.lua'))          # G:codepathCode.lua
## 在第一个绝对路径前的参数忽略掉
print(os.path.join('windos','E:code', 'demo.lua'))     # E:codedemo.lua

os.path.normcase

# 转换路径的大小写和斜杠
print(os.path.normcase('D:/windows\system32'))         # d:windowssystem32

os.path.getctime

# 返回文件的创建时间(浮点型秒数)
timestamp = os.path.getctime('path.py')                 
timestruct = datetime.datetime.fromtimestamp(timestamp)
print(timestruct.strftime('%Y-%m-%d %H:%M:%S'),timestamp)     
# ('2019-01-31 15:13:34', 1548918814.2969258)

os.path.getatime

# 返回文件最近的访问时间(浮点型秒数)
timestamp = os.path.getatime('path.py')                 
timestruct = datetime.datetime.fromtimestamp(timestamp)
print(timestruct.strftime('%Y-%m-%d %H:%M:%S'),timestamp)     
# ('2019-01-31 15:19:57', 1548919197.053918)

os.path.getmtime

# 返回文件最近修改时间(浮点型秒数)
timestamp = os.path.getmtime('path.py')                 
timestruct = datetime.datetime.fromtimestamp(timestamp)
print(timestruct.strftime('%Y-%m-%d %H:%M:%S'),timestamp)     
# ('2019-01-31 16:33:43', 1548923623.2079258)

os.path.getsize

# 返回文件的大小(字节),如果文件不存在就返回错误
print(os.path.getsize('path.py'))                      # 3061
print(os.path.getsize('G:codeDemopath.py'))         # 3061
#print(os.path.getsize('file.lua'))                    # WindowsError: [Error 2] : 'file.lua'

感谢原作者的分享:

http://www.runoob.com/python/python-os-path.html

https://www.cnblogs.com/wuxie1989/p/5623435.html

原文地址:https://www.cnblogs.com/SkyflyBird/p/10342795.html