python工具 - 从文件名读取特定信息到excel表格

时间:2024-04-17 11:42:28

情景:文件名中包含学号和用户名,其中用户名在前学好在后,学号为2位,如harry33.txt、natasha12.txt。

要求:将多个文件名中的用户名与学号分开并保存到excle中。

代码部分:

import os

# 创建一个立标,用来保存去掉扩展名后的文件名
filename = []

# os.walk:遍历某目录下所有的文件和文件夹
for a,b,files in os.walk(\'test\'):
    # 如果文件存在,保存开始到倒数第四位的字符到filename列表里
    if files:
        # 扩展名名为3个字母+之前的一个点(.),一共是4个字符,截取到倒数第四个字符为止就获取了文件名
        filename.append([file[:-4] for file in files])

#print(os.listdir(\'test\'))  查看完整文件内容
#print(filename)    查看去掉扩展名后到内容

# 创建用于保存文件名的excel表格名称
fname = \'testexam\'
# 表格计数器
i = 0

# 循环filename,以此读取不同的文件名
for files in filename:
    # 生成带后缀的excel表文件
    f = open(fname+str(i)+\'.xls\',\'w\')
    # 将读取到的文件名写入到新生成的excel文件里
    for name in files:
        #文件名倒数两位是数字号码,单独提取出来放在excel的前边;文件开始到倒数第2位是姓名信息,提取出来放到后边
        f.write(name[-2:]+\'\t\'+name[:-2]+\'\n\')
    f.close()
    i+=1
print(\'生成成功!\')

执行结果: