1. 取文件前缀和后缀名
import os, cv2, time, sys
name = os. path. splitext( name) [ 0 ]
file_type = os. path. splitext( name) [ - 1 ] [ 1 : ]
file_type = os. path. splitext( name) [ - 1 ]
2. 判断后缀名是否为某一文件类型
if filename. endswith( '.jpg' ) :
3. 文件从A文件夹移动到B文件夹
import shutil
shutil. move( file_Dir + name, target_Dir + name)
shutil. copyfile( "oldfile" , "newfile" )
shutil. copytree( r"D:\stuy" , r"D:\newfile" )
os. rename( r"D:\newfile" , r"D:\newfile1" )
shutil. move( r"D:\test" , r"D:\test1" )
shutil. move( r"D:\123.jpg" , r"D:\test1\123a.jpg" )
4. 文件从A文件夹移动到B文件夹并重命名
for filename in sorted ( os. listdir( gt_path) ) :
if filename. endswith( 'jpg' ) :
os. rename( gt_path+ filename, gt_path1+ filenames[ i] )
i = i + 1
5. 获取文件路径中最后一个文件夹名
path = "D:/data/gt"
os. path. basename( path)
6. os.path 模块的几种常用方法
os. path 模块主要用于获取文件的属性。
os. path. abspath( path) 返回绝对路径
os. path. basename( path) 返回文件名
os. path. commonprefix( list ) 返回list ( 多个路径) 中,所有path共有的最长的路径
os. path. dirname( path) 返回文件路径
os. path. exists( path) 如果路径 path 存在,返回 True ;如果路径 path 不存在,返回 False 。
os. path. lexists 路径存在则返回True , 路径损坏也返回True
os. path. expanduser( path) 把path中包含的"~" 和"~user" 转换成用户目录
os. path. expandvars( path) 根据环境变量的值替换path中包含的"$name" 和"${name}"
os. path. getatime( path) 返回最近访问时间(浮点型秒数)
os. path. getmtime( path) 返回最近文件修改时间
os. path. getctime( path) 返回文件 path 创建时间
os. path. getsize( path) 返回文件大小,如果文件不存在就返回错误
os. path. isabs( path) 判断是否为绝对路径
os. path. isfile( path) 判断路径是否为文件
os. path. isdir( path) 判断路径是否为目录
os. path. islink( path) 判断路径是否为链接
os. path. ismount( path) 判断路径是否为挂载点
os. path. join( path1[ , path2[ , . . . ] ] ) 把目录和文件名合成一个路径
os. path. normcase( path) 转换path的大小写和斜杠
os. path. normpath( path) 规范path字符串形式
os. path. realpath( path) 返回path的真实路径
os. path. relpath( path[ , start] ) 从start开始计算相对路径
os. path. samefile( path1, path2) 判断目录或文件是否相同
os. path. sameopenfile( fp1, fp2) 判断fp1和fp2是否指向同一文件
os. path. samestat( stat1, stat2) 判断stat tuple stat1和stat2是否指向同一个文件
os. path. split( path) 把路径分割成 dirname 和 basename,返回一个元组
os. path. splitdrive( path) 一般用在 windows 下,返回驱动器名和路径组成的元组
os. path. splitext( path) 分割路径,返回路径名和文件扩展名的元组
os. path. splitunc( path) 把路径分割为加载点与文件
os. path. walk( path, visit, arg) 遍历path,进入每个目录都调用visit函数,visit函数必须有3 个参数( arg, dirname, names) ,dirname表示当前目录的目录名,names代表当前目录下的所有文件名,args则为walk的第三个参数
os. path. supports_unicode_filenames 设置是否支持unicode 路径名
7. 正则表达式
label_re = re. compile ( r'.*{}(\d+)\.geojson' . format (
self. label_fn_prefix) )
scene_ids = [
label_re. match( label_path) . group( 1 ) for label_path in label_paths
]
8. 运行命令行
import subprocess
subprocess. call ( [ "cmd" , "arg1" , "arg2" ] , shell= True )
import os
tmp = os. popen( 'ls *.py' ) . readlines( )