Python科研武器库 - 字符串操作 - 路径字符串分割 os.path.split()、os.path.splitext()

使用场景:
科研中批量处理数据时的,文件路径分割以及文件格式判断
对于文件格式判断,是因为实际文件的格式多种多样,就拿图像为例,就有.png .jpg .bmp等等。
更不用说,有时候还有一些干扰文件需要屏蔽(比如Mac系统的.DS_Store文件)。
这就需要我们判断文件格式,再对特定格式的文件进行操作

使用函数:

  1. 文件路径分割
    os.path.split()
    用于将路径拆分为头部和尾部。尾部是路径的最后一个组成部分,而头部是指“尾部”部分前的所有内容。
    这里需注意,文件路径的os.path.split(),与字符串的split()有所不同,
    字符串split()的用法详见我另一篇博客:
  2. 文件格式判断
    os.path.splitext()
    用于将路径名拆分为root和ext。其中,ext代表扩展名(extension),表示指定路径(文件)的扩展名部分,而root是除ext部分之外的所有内容。
    若指定路径中不包括任何扩展名,则ext为空。如果指定路径以句点 (.) 开头,则会被忽略。

代码示例:

import os
 
path = '/home/Lingdu/Desktop/lingdu.txt'
 
head_tail = os.path.split(path)
 
print("Head of '% s:'" % path, head_tail[0])
print("Tail of '% s:'" % path, head_tail[1], "\n")
 
path = '/home/Lingdu/Desktop/'
 
head_tail = os.path.split(path)
 
print("Head of '% s:'" % path, head_tail[0])
print("Tail of '% s:'" % path, head_tail[1], "\n")
 
path = 'lingdu.txt'

head_tail = os.path.split(path)
 
print("Head of '% s:'" % path, head_tail[0])
print("Tail of '% s:'" % path, head_tail[1])

运行效果:

Head of '/home/Lingdu/Desktop/lingdu.txt:' /home/Lingdu/Desktop
Tail of '/home/Lingdu/Desktop/lingdu.txt:' lingdu.txt 

Head of '/home/Lingdu/Desktop/:' /home/Lingdu/Desktop
Tail of '/home/Lingdu/Desktop/:'  

Head of 'lingdu.txt:' 
Tail of 'lingdu.txt:' lingdu.txt

代码示例:

import os 
  
path = '/home/Lingdu/Desktop/lingdu.txt'
  
root_ext = os.path.splitext(path) 
  
print("Root part of '% s':" % path, root_ext[0]) 
print("Ext part of '% s':" % path, root_ext[1], "\n") 
  
path = './home/Lingdu/Desktop/'
  
root_ext = os.path.splitext(path) 
  
print("Root part of '% s':" % path, root_ext[0]) 
print("Ext part of '% s':" % path, root_ext[1]) 

运行效果:

Root part of '/home/Lingdu/Desktop/lingdu.txt': /home/Lingdu/Desktop/lingdu
Ext part of '/home/Lingdu/Desktop/lingdu.txt': .txt 

Root part of './home/Lingdu/Desktop/': ./home/Lingdu/Desktop/
Ext part of './home/Lingdu/Desktop/': 

热门相关:医门宗师   重生之男神追妻忙   女演员们的性爱选秀   学霸,你女朋友掉了   全民女神,重生腹黑千金