擅长:python、mysql、java
<p><code>resub</code>可以接受可调用字符串的第二个参数,而不仅仅是替换字符串。你知道吗</p>
<p>如果传递一个callable,它必须接受match对象。你知道吗</p>
<p>您还应该遵循<a href="http://www.python.org/dev/peps/pep-0008" rel="nofollow">python pep8</a>使python更具可读性(对于其他pythonistas)</p>
<p>比如:</p>
<pre><code>def feetframes_to_timecode(feetframes_match, framerate=24):
feetframes = feetframes_match.group()
frames = int(feetframes[:4])*16+int(feetframes[-2:])
return "%02d:%02d:%02d:%02d" % (frames/(3600*framerate),
frames/(60*framerate)%60,
frames/framerate%60,
frames%framerate)
# then just use:
for line in input_document:
output_document.write(re.sub(r'\d{4}\+\d\d', feetframes_to_timecode, line))
</code></pre>