import os, sys
def names(roots):
for root in roots:
for a, b, basenames in os.walk(root):
for basename in basenames:
yield basename
sufs = set(os.path.splitext(x)[1] for x in names(sys.argv[1:]))
for suf in sufs:
if suf:
print suf
< p >更新:
每个@alpha_989长的文件扩展名将导致一个问题。这是由于最初的正则表达式&;[[:alpha:]]{3,6}"。我已经更新了答案,包括正则表达式&;[[:alpha:]]{2,16}&;然而,任何使用这段代码的人都应该知道,这些数字是最终输出所允许的扩展长度的最小值和最大值。任何超出该范围的内容将在输出中被分割成多行