擅长:python、mysql、java
<p>我建议用字典来达到这个目的,你可以通过列表理解得到:</p>
<pre><code>>>> [dict((('x%d'%index,x),('y%d'%index,y),('z%d'%index,z))) for index, (x, y, z) in enumerate(l,1)]
[{'y1': 2, 'x1': 1, 'z1': 3}, {'x2': 2, 'y2': 3, 'z2': 4}, {'x3': 3, 'y3': 4, 'z3': 5}, {'z4': 6, 'y4': 5, 'x4': 4}]
</code></pre>
<p>然后使用以下命令代替<code>math.sqrt(( x1-x2 )**2 + ( y1-y2 )**2 + (z1-z2 )**2)</code>:</p>
<pre><code>math.sqrt((new_dic['x1']-new_dic['x2'] )**2 + ( new_dic['y1']-new_dic['y2'] )**2 + (new_dic['z1']-new_dic['z1'] )**2)
</code></pre>