在数据分析中,我们有时需要提取文件名作为后用,下面为大家介绍两种方法。
需要处理的数据如下图:
方法一
path = r'C:\Users\asus\Desktop\specair\specair_spectrum'
def ListFilesToTxt(dir,file,wildcard,recursion):
exts = wildcard.split(" ")
for root, subdirs, files in os.walk(dir):
for name in files:
for ext in exts:
if(name.endswith(ext)):
file.write(name+'\t'+"\n")
if(not recursion):
break
def Test():
dir = path
outfile = "123.txt"
wildcard = '.txt'
file = open(outfile, "w")
if not file:
print('cannot open the file %s for writing'%outfile)
ListFilesToTxt(dir, file, wildcard, 1)
file.close()
rootdir = os.getcwd()
Test()
f = open('123.txt')
line = f.readline()
print(line)
方法二
path = r'C:\Users\asus\Desktop\specair\specair_spectrum'
filenames = os.listdir(path)
filenames.sort(key=lambda x: int(x[:-4])) # 解决自动排序问题:按照多少维排序
out = open('123.txt', 'w')
for name in filenames:
out.write(name+'\n')
out.close()
得到的效果如下图: