python os 模块(附代码)

最近因为工作需要,需要大量的文件操作,要说文件操作,首选当然是OS模块了,趁此机会抓紧复习下
os.path

  • os.path.abspath(path) 返回路径 path 的绝对路径(标准化的),
RELATIVE_BASE_PATH = './test.txt'    # 相对路径
ABSOLUTE_BASE_PATH = r'F:\pythonpack\data_structure\py_os_file\test.txt'   # 绝对路径

print(os.path.abspath(RELATIVE_BASE_PATH))
print(os.path.abspath(ABSOLUTE_BASE_PATH))
输出:
F:\pythonpack\data_structure\py_os_file\test.txt
F:\pythonpack\data_structure\py_os_file\test.txt
  • os.path.split(path)
    将路径 path 拆分为一对,即 (head, tail),其中,tail 是路径的最后一部分,而 head 里是除最后部分外的所有内容。tail 部分不会包含斜杠,如果 path 以斜杠结尾,则 tail 将为空。如果 path 中没有斜杠,head 将为空。如果 path 为空,则 head 和 tail 均为空。head 末尾的斜杠会被去掉,除非它是根目录(即它仅包含一个或多个斜杠)总结为:以路径最后一个斜杠为分隔符进行分割,分为前后两部分
print(os.path.split(r'F:\pythonpack\data_structure\py_os_file\test.txt'))   # 正常情况下
print(os.path.split('F:\\pythonpack\\data_structure\\py_os_file\\'))   # 以斜杠结尾
print(os.path.split(''))   # 为空
输出
('F:\\pythonpack\\data_structure\\py_os_file', 'test.txt')
('F:\\pythonpack\\data_structure\\py_os_file', '')
('', '')
  • os.path.basename(path)返回路径 path 的基本名称。这是将 path 传入函数 split() 之后,返回的一对值中的第二个元素.有些文档中说返回文件名其实是不严谨的,这里要结合os.path.split()函数一起做对比更容易理解
RELATIVE_BASE_PATH = './test.txt'    # 相对路径
ABSOLUTE_BASE_PATH = r'F:\pythonpack\data_structure\py_os_file'   # 绝对路径

print(os.path.basename(RELATIVE_BASE_PATH))
print(os.path.basename(ABSOLUTE_BASE_PATH))
输出:
test.txt
py_os_file
  • os.path.dirname(path)
    返回路径 path 的目录名称。这是将 path 传入函数 split() 之后,返回的一对值中的第一个元素。注意和os.path.basename(path)做对比记忆。
RELATIVE_BASE_PATH = './test.txt'    # 相对路径
ABSOLUTE_BASE_PATH = r'F:\pythonpack\data_structure\py_os_file'   # 绝对路径

print(os.path.dirname(RELATIVE_BASE_PATH))
print(os.path.dirname(ABSOLUTE_BASE_PATH))
输出:
.
F:\pythonpack\data_structure
  • os.path.exists(path)
    如果 path 指向一个已存在的路径或已打开的文件描述符,返回 True。对于失效的符号链接,返回 False。在某些平台上,如果使用 os.stat() 查询到目标文件没有执行权限,即使 path 确实存在,本函数也可能返回 False。总结为一句话,如果参数path存在或者路径下的文件存在,返回True,特殊情况对某个文件没有执行权限,也可能返回False
    这里的路径可以是系统中任何位置的路径,和程序运行路径没关系
print(os.path.exists('./test.txt' ))
print(os.path.exists(r'F:\pythonpack\data_structure\py_os_file'))
print(os.path.exists(r'F:\pythonpack\data_structure\py_os_file111111'))
输出:
True
True
False

暂时先写这么多吧,都是官网搬运的,今天先这样

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值