擅长:python、mysql、java
<p>在Python 3中,在二进制模式下使用<code>open</code>创建一个<a href="http://docs.python.org/release/3.1.3/library/io.html#io.BufferedWriter" rel="nofollow">^{<cd2>}</a>,它需要字节,而不是字符串。通过使用<code>encode</code>方法,您可以将字符串更改为字节;但我认为<code>cvs.writer.writerow</code>会在编写之前将这些字节转换回字符串。</p>
<p>与其以二进制模式打开文件,不如尝试找出导致双间距的原因。我有两个问题:</p>
<ol>
<li><p>你在用什么平台?</p></li>
<li><p><code>print repr(self.ui.table.item(i,4).text())</code>的输出是什么?</p></li>
</ol>
<p>我的猜测是brandizzi的<code>strip()</code>方法可以工作,但如果不行,我们需要进行一些故障排除。</p>
<p><strong>编辑</strong>:好的,John Machin的帖子将其全部清除。在Python 3中解决此问题的正确方法是使用<code>newline=''</code>打开文件,这将禁用自动换行转换。<a href="http://bugs.python.org/issue7198" rel="nofollow">This bug report</a>包含一些有用的信息。</p>