#python #io #precision
Вопрос:
У меня есть массив значений, которые я читаю из txt-файла. Количество столбцов является переменным, как и точность с плавающей точкой (однако точность с плавающей точкой согласована в одном столбце). Например :
a = np.array([[ 42.623, 41.965, 600.488, 146. , 145. , 150. , 0.00004]])
Как я могу сохранить этот массив в txt-файле без большего количества плавающих чисел, чем необходимо ?
В настоящее время я пытаюсь использовать numpy.savetxt, и, хотя следующая строка подходит для этого конкретного случая, мне нужно уметь выводить плавающую точность в каждом столбце из значений, если я хочу, чтобы ее можно было использовать для любого типа txt-файла.
np.savetxt("out_a.txt", a, fmt=['%1.3f', '%1.3f', '%1.3f', '%1.0f', '%1.0f', '%1.0f', '%1.5f'])
Единственный способ, о котором я думаю в данный момент, — это прочитать одну строку моих данных в виде строк, разделенных пробелом, чтобы использовать len()
ее. есть ли более элегантный способ ?