擅长:python、mysql、java
<p>试试这个:</p>
<pre><code>new_sun_az = [i+360 if i > 0 else i for i in sun_az]
</code></pre>
<p>主要区别在于,大多数操作符应用于普通Python列表中的list对象并返回单个结果,而它们返回一个numpy数组,其中每个项都是应用于numpy数组的原始数组上相应项的操作的结果。你知道吗</p>
<pre><code>>>> import numpy as np
>>> plainlist = range(5)
>>> plainlist
[0, 1, 2, 3, 4]
>>> plainlist > 5 # single result
True
>>> nparray = np.array(plainlist)
>>> nparray
array([0, 1, 2, 3, 4])
>>> nparray > 5 # array of results
array([False, False, False, False, False], dtype=bool)
>>>
</code></pre>
<p>[更新]</p>
<p>迈克的回答是对的。我最初的回答是:</p>
<pre><code>new_sun_az = [i+i*360 if i > 0 else i for i in sun_az]
</code></pre>