擅长:python、mysql、java
<p>给定如下文件名(可以使用<code>os.walk</code>迭代文件系统)</p>
<pre><code>filename = 'ETos19810101.asc'
</code></pre>
<p>首先,必须拆分文件名以获取每个重要部分:</p>
^{pr2}$
<p>然后可以解析日期:</p>
<pre><code>from datetime import datetime
date = datetime.strptime(strdate, '%Y%m%d')
</code></pre>
<p>现在您可以将所有内容连接在一起(<code>%Y%j</code>按照您想要的方式格式化日期):</p>
<pre><code>newfilename = '{prefix}{date:%Y%j}{ext}'.format(prefix=prefix, date=date, ext=ext)
</code></pre>
<p>最后重命名文件:</p>
<pre><code>os.rename(filename, newfilename)
</code></pre>
<p>请注意,如果<code>newfilename</code>已经存在,最后一条指令将失败。
要解决此问题,必须删除该文件(如果存在):</p>
<pre><code>if os.path.exists(newfilename):
os.remove(newfilename)
os.rename(filename, newfilename)
</code></pre>