擅长:python、mysql、java
<p>这似乎是元组的行为。打印元组时,print对每个元素调用<code>__repr()__</code>。列表也是如此。在</p>
<p>我试过了:</p>
<pre><code>tup = "xxx\nxx",
lst =["xxx\nxx"]
for t in tup,lst:
print('t :', t)
for s in t:
print('element:',s)
print(' repr:',s.__repr__())
print('---')
</code></pre>
<p>输出是:</p>
^{pr2}$
<p>所以,元组和列表的行为是一样的。在</p>
<p>当我们有一个字符串时,调用<code>__repr__()</code>不会扩展<code>\n</code>字符,而是在其周围加上引号:</p>
<pre><code>s = "xxx\nxx"
print('s :', s)
print('s.__repr__():', s.__repr__())
</code></pre>
<p>输出:</p>
<pre><code>s : xxx
xx
s.__repr__(): 'xxx\nxx'
</code></pre>
<p>这个元组行为是由<a href="https://stackoverflow.com/users/2018369/running-t">running.t</a>、<a href="https://stackoverflow.com/users/189205/interjay">interjay</a>和{a3}在评论中提到的,但在答案中没有提到,这就是我发布这个答案的原因。在</p>