擅长:python、mysql、java
<p>要解释有问题的线路:</p>
<p><code>(self.filename + '.out'</code>表示将“.out”连接到原始文件名的末尾。在</p>
<p><code>+ os.path.splitext(self.filename)[-1])</code>表示将文件名拆分为<code>['path', 'extension']</code>的列表,然后将最后一个元素(扩展名)重新连接到末尾。在</p>
<p>所以你得到了<code>data.xlsx.out.xlsx</code></p>
<p>您应该能够使用<code>bookwt.save(self.filename)</code>,但是如果文件仍然打开以供阅读,则可能会遇到错误。以与上述类似的方式创建副本可能更安全:</p>
<pre><code>filepath, fileext = os.path.splitext(self.filename)
bookwt.save(filepath + '_out' + fileext)
</code></pre>
<p>这会给你<code>data_out.xlsx</code></p>