擅长:python、mysql、java
<p>在打印下一个</em>时,请打印逗号和换行符<em>,而不是尝试检测您是否在最后一个项目上(这仅在您在第一个项目上时需要检测):</p>
<pre><code>a = ['hello', 9, 3.14, 9]
for i, item in enumerate(a):
if i: # print a separator if this isn't the first element
print(',')
print(item, end='')
print() # last newline
</code></pre>
<p><code>enumerate()</code>函数向每个元素添加一个计数器(请参见<a href="https://stackoverflow.com/questions/22171558/what-does-enumerate-mean">What does enumerate mean?</a>),并且对于除<code>0</code>(第一个元素)之外的所有计数器值,<code>if i:</code>都是真的。</p>
<p>或者使用<code>print()</code>插入分隔符:</p>
<pre><code>print(*a, sep=',\n')
</code></pre>
<p>在每个参数之间插入<code>sep</code>值(<code>*a</code>将<code>a</code>中的所有值作为单独的参数应用,请参见<a href="https://stackoverflow.com/questions/36901/what-does-double-star-and-star-do-for-python-parameters">What does ** (double star) and * (star) do for parameters?</a>)。这比使用<code>print(',n'.join(map(str, a)))</code>更有效,因为这不需要首先构建一个全新的字符串对象。</p>