python去除文件后缀的方法:
1、调用os模块,用os模块的listdir()方法和walk()方法获取文件夹和文件名
list_name = []
Makedir(outDir)
for dir in os.listdir(fileDir): # 获取当前目录下所有文件夹和文件(不带后缀)的名称
filePath = os.path.join(fileDir, dir) # 得到文件夹和文件的完整路径
if os.path.isdir(filePath) and not (filePath == outDir):
txt = outDir + dir + ".txt"
# 获取根目录路径、子目录路径,根目录和子目录下所有文件名
for root, subDir, files in os.walk(filePath):
2、使用splitext方法分割文件的后缀,写入txt文件中
for fileName in files:
f = open(txt, 'a') # 以追加方式打开文件
fileName = os.path.splitext(fileName)[0] + 'n' # 分割,不带后缀名
f.write(fileName)
f.close()
完整代码如下:
# 当前目录下所有文件夹下的文件名(不带后缀)写入对应txt文件(以文件夹命名)中
import os# 如果文件夹不存在创建文件夹
def Makedir(path):
folder = os.path.exists(path)
if (not folder):
os.makedirs(path)# 利用os.listdir()、os.walk()获取文件夹和文件名
def GetFileName(fileDir, outDir):
list_name = []
Makedir(outDir)
for dir in os.listdir(fileDir): # 获取当前目录下所有文件夹和文件(不带后缀)的名称
filePath = os.path.join(fileDir, dir) # 得到文件夹和文件的完整路径
if os.path.isdir(filePath) and not (filePath == outDir):
txt = outDir + dir + ".txt"
# 获取根目录路径、子目录路径,根目录和子目录下所有文件名
for root, subDir, files in os.walk(filePath):
for fileName in files:
f = open(txt, 'a') # 以追加方式打开文件
fileName = os.path.splitext(fileName)[0] + 'n' # 分割,不带后缀名
f.write(fileName)
f.close()
def main():
fileDir = "H:resultdata" # 输入文件夹路径
outDir = "H:resultdataFileData"
files = GetFileData(fileDir, outDir)# 判断是否是程序主入口而已,如果是程序主入口,则代码块执行,否则代码块不执行
# 主要用于别人调用此代码时,不要进入该代码的入口
if __name__ == "__main__":
main()
更多Python知识,请关注:Python自学网!!