擅长:python、mysql、java
<p>您可以将这个可怕的python一行代码分成两行,以确保只有当您有一个非空的文件列表,从中选择最新的文件时,<code>max</code>才被调用:</p>
<pre><code>def newest_file_in_tree(rootfnewer, extension=".avi"):
files = [
os.path.join(dirname, filename)
for dirname, dirnames, filenames in os.walk(rootfnewer)
for filename in filenames
if filename.endswith(extension)
]
if files:
return max(files, key=lambda fn: os.stat(fn).st_mtime)
return None
</code></pre>
<p>虽然没有@hiroprotopictor的解决方案那么漂亮,但更具可读性。在</p>