Detect If Item is the Last in a List
<p>I am using Python 3, and trying to detect if an item is the last in a list, but sometimes there will repeats. This is my code:</p>

<pre><code>a = ['hello', 9, 3.14, 9]
for item in a:
    print(item, end='')
    if item != a[-1]:
        print(', ')
</code></pre>

<p>And I would like this output:</p>

<pre><code>hello,
9,
3.14,
9
</code></pre>

<p>But I get this output:</p>

<pre><code>hello, 
93.14, 
9
</code></pre>

<p>I understand why I am getting the output I do not want.
I would prefer if I could still use the loop, but I can work around them. (I would like to use this with more complicated code)</p>

<p>If you really just want to join your elements into a comma+newline-separated string then it's easier to use <a href="https://docs.python.org/3/library/stdtypes.html#str.join" rel="nofollow"><code>str.join</code></a> method:</p>

<pre><code>elements = ['hello', 9, 3.14, 9]
s = ',\n'.join(str(el) for el in elements)
# And you can do whatever you want with `s` string:
print(s)
</code></pre>

python list python-3.x