擅长:python、mysql、java
<p><code>re</code>对这样的事情来说太过分了。有一个用于提取文件扩展名的库函数,<code>os.path.splitext</code>。在下面的示例中,我们构建了一个filenamesmap的扩展名,我们使用它来检查在恒定时间内<code>.mkv</code>文件的存在,并将每个文件名映射到相应的命令。在</p>
<p>请注意,您可以使用<a href="https://docs.python.org/2/library/zipfile.html" rel="nofollow noreferrer">zipfile</a>(标准库)和第三方软件包<a href="https://stackoverflow.com/questions/17614467">are available for ^{<cd4>} files</a>解压缩文件。在</p>
<pre><code>import os
for root, dirs, files in os.walk(path):
ext_map = {}
for fn in files:
ext_map.setdefault(os.path.splitext(fn)[1], []).append(fn)
if '.mkv' not in ext_map:
for ext, fnames in ext_map.iteritems():
for fn in fnames:
if ext == ".zip":
os.system("unzip %s -d %s" % (fn, root))
elif ext == ".rar" or ext == ".r00":
os.system("unrar %s %s" % (fn, root))
</code></pre>