1

我正在使用下面的代码从目录中提取文件名并打印它们。然而,印刷品不容易阅读,我想知道是否有人可以帮助我想出一种更好的方法来通过分离它来显示它。所以我的问题是你将如何使用 python 分隔这个文件名?

from os import listdir

def find_csv_filenames( path_to_dir, suffix=".csv" ):
    filenames = listdir(path_to_dir)
    return [ filename for filename in filenames if filename.endswith( suffix ) ]


filenames = find_csv_filenames('C:\Users\AClayton\Aug')
for name in filenames:
    print name

这给出了文件名Agusta_AW149_Ground_2011_7_29_14_50_0.csv

我希望它读到类似Name=Augusta Test=Ground Date =29/7/2011. 我想对许多具有相同格式/顺序的文件名执行此操作,只是“测试”,所以“地面”会改变,而日期。

谢谢你的帮助

4

2 回答 2

1

如果您确定每个文件名都具有该属性顺序,则可以使用

name.split('_')

并按照您的喜好组织新的字符串。例如,在您的情况下,您可以执行以下操作:

sep_names = name.split('_')
Name = 'Name='+sep_names[0]
Test = 'Test='+sep_names[2]
Data = 'Date='+sep_names[5]+'/'+sep_names[4]+'/'+sep_names[3]
于 2013-09-04T14:47:52.033 回答
0

您可以使用 拆分字符串name.split('_'),这将返回以下格式的列表:

>>['Agusta', 'AW149', 'Ground', '2011', '7', '29', '14', '50', '0.csv']

然后你可以打印name.split('_')[0],这会给你Augusta等等。

于 2013-09-04T14:49:40.750 回答