2016-04-25 123 views
0

我使用文件夹中的文件创建列表。这些文件是这样命名的:t1507859_Etappe-02-Alpe-Adria-Trail.svg。我想分割字符串以获得如下内容:["t1507859_Etappe-", "02", "-Alpe-Adria-Trail.svg"]。我想回到我从分裂操作中获得的名单第二位的数字。在列表中拆分字符串

dirs = os.listdir (path) 

[i.split('-', 2)[1] for i in l] 

print dirs 

如果我将这段代码一行一行地分析到python shell中,但它的工作原理并不是如果我让它作为模块运行的话。在那里我只是得到正常的目录列表。

回答

6

如果我将这段代码逐行解析到python shell中,但它的工作原理并不是如果我让它作为模块运行的话。在那里我只是得到正常的目录列表。

当然,这是因为你是不是分配列表解析的结果给一个变量。相反,你的意思是:

dirs = os.listdir(path) 
dirs = [i.split('-', 2)[1] for i in dirs] 
print(dirs)