我有一系列带有命名模式的文件夹: %Y-%间 - %d 我想使用fnmatch找到它们并将它们附加到列表中。 我目前正在使用此代码:
for root, subs, files in os.walk('.'):
for name in subs:
if fnmatch.fnmatch(name, '%y-%m-%d'):
folderlist.append(os.path.join(root, name))
但这会产生一个空的文件夹列表。我知道这个的原因(%y-%m-%d不是fnmatch理解的正确模式,但我不知道如何绕过它。
答案 0 :(得分:1)
您可以使用正则表达式:
var itemToMove = Your1stCollectionProperty.ElementAt(indexOfItemToRemove);
Your1stCollectionProperty.Remove(itemToMove);
Your2ndCollectionProperty.Add(itemToMove);
答案 1 :(得分:0)
我认为re
会更好而不是fnmatch
,但这里是:
import os
from fnmatch import fnmatch
folderlist = []
for root, subs, files in os.walk('.'):
for name in subs:
if fnmatch(name, '[12][0123456789][0123456789][0123456789]-[01][0123456789]-[0123][0123456789]'):
folderlist.append(os.path.join(root, name))
print(folderlist)