https://www.runoob.com/python/os-rename.html
os.rename(src, dst) #改名
https://www.jb51.net/article/134543.htm 获取文件夹名称
本文采用os.walk()和os.listdir()两种方法,获取指定文件夹下的文件名。
一、os.walk()
模块os中的walk()函数可以遍历文件夹下所有的文件。
os.walk(top, topdown=Ture, onerror=None, followlinks=False)
该函数可以得到一个三元tupple(dirpath, dirnames, filenames).
参数含义:
dirpath:string,代表目录的路径;
dirnames:list,包含了当前dirpath路径下所有的子目录名字(不包含目录路径);
filenames:list,包含了当前dirpath路径下所有的非目录子文件的名字(不包含目录路径)。
注意,dirnames和filenames均不包含路径信息,如需完整路径,可使用os.path.join(dirpath, dirnames)
下面给出代码;
import os
def file_name(file_dir):
for root, dirs, files in os.walk(file_dir):
print(root) #当前目录路径
print(dirs) #当前路径下所有子目录
print(files) #当前路径下所有非目录子文件
https://www.cnblogs.com/iois/p/7258686.html
shutil.move(srcfile,dstfile) #移动文件
用python实现将某代码文件复制/移动到指定路径下。
场景例如:mv ./xxx/git/project1/test.sh ./xxx/tmp/tmp/1/test.sh (相对路径./xxx/tmp/tmp/1/不一定存在)
import os,shutil
def mymovefile(srcfile,dstfile):
if not os.path.isfile(srcfile):
print "%s not exist!"%(srcfile)
else:
fpath,fname=os.path.split(dstfile) #分离文件名和路径
if not os.path.exists(fpath):
os.makedirs(fpath) #创建路径
shutil.move(srcfile,dstfile) #移动文件
print "move %s -> %s"%( srcfile,dstfile)
def mycopyfile(srcfile,dstfile):
if not os.path.isfile(srcfile):
print "%s not exist!"%(srcfile)
else:
fpath,fname=os.path.split(dstfile) #分离文件名和路径
if not os.path.exists(fpath):
os.makedirs(fpath) #创建路径
shutil.copyfile(srcfile,dstfile) #复制文件
print "copy %s -> %s"%( srcfile,dstfile)
srcfile='/Users/xxx/git/project1/test.sh'
dstfile='/Users/xxx/tmp/tmp/1/test.sh'
mymovefile(srcfile,dstfile)
import os,shutil
def hh(file_dir):
for root, dirs, files in os.walk(file_dir):
print(root) #当前目录路径
print(root[5:]) #当前目录路径
# print(dirs) #当前路径下所有子目录
if len(files):
print(files[0]) #当前路径下所有非目录子文件
os.rename(root+'\\'+files[0],root[0:11]+'\\'+root[5:]+'.zip')
shutil.move(root[0:11]+'\\'+root[5:]+'.zip',root[0:5])
hh('D:\\2') #D:\2\111\a.zip D:\2\222\b.zip