對於我來說似乎很簡單,但我仍然缺少一種高效且「乾淨」的方式來將屬於numpy數組的一系列元素(如aa[:,:]
)插入格式化字符串中印刷/寫入。 事實上擴展元件逐元素規範的語法,如:一系列numpy數組元素的格式化的字符串
formattedline= '%10.6f %10.6f %10.6f' % (aa[ii,0], aa[ii,1], aa[ii,2])
file1.write(formattedline+'\n')
正在工作。
但我還沒有發現任何其他較短的解決方案,這是因爲:
formattedline= '%10.6f %10.6f %10.6f' % (float(aa[ii,:]))
file1.write(formattedline+'\n')
當然
給出:TypeError: only length-1 arrays can be converted to Python scalars
或:
formattedline= '%10.6f %10.6f %10.6f' % (aa[ii,:])
file1.write(formattedline+'\n')
給出:TypeError: float argument required, not numpy.ndarray
。 我已經嘗試了迭代器,但沒有成功。
當有幾個要打印的元素時,這當然很有趣。
所以:我如何結合numpy數組和字符串格式化時尚的迭代?
這是很好,工作! :) ...所以第二個解決方案實際上是在numpy數組上迭代,非常好。 – gluuke
...但仍然添加一個字符串:'formattedline ='%4s%10.6f%10.6f%10.6f'%(string1,(tuple(aa [ii,:])))'''TypeError:float argument需要,而不是元組「,我不明白爲什麼 – gluuke
@ gluuke你需要添加它們:'(string1,)+ tuple(aa [ii,:])''。 –