我正在创建一个包含文件夹中文件的列表。这些文件的名称如下: 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中,它可以工作,但如果我让它作为模块运行则不行。在那里,我只是得到正常的目录列表。
答案 0 :(得分:6)
如果我将这个代码逐行解析到python shell中,它可以工作,但如果我让它作为模块运行则不行。在那里,我得到了正常的目录列表。
当然,这是因为您没有将列表推导的结果分配给变量。相反,你的意思是:
dirs = os.listdir(path)
dirs = [i.split('-', 2)[1] for i in dirs]
print(dirs)