擅长:python、mysql、java
<p>我只是假设一下。如果这是您的代码:</p>
<pre><code>listOrigin = [10, -15, 3, 8, 0, 9, -6, 13, -1, 5]
listMask = []
for item in listOrigin:
if item > 0:
listMask.append(1)
elif item < 0:
listMask.append(-1)
else:
listMask.append(0)
print(listOrigin)
print(listMask)
</code></pre>
<p>好吧,它起作用了。您需要为语句使用多行。但是,您也可以这样编写代码:</p>
<pre><code>listOrigin = [10, -15, 3, 8, 0, 9, -6, 13, -1, 5]
# Place a 1 if the item is above 0, else a -1. 0 will be flagged as -1.
listMask = [1 if elt > 0 else -1 for elt in listOrigin]
# Place the 0
listMask = [listMask[k] if elt != 0 else 0 for k, elt in enumerate(listOrigin)]
</code></pre>