Не существует встроенного способа сделать это, так как обычно проще просто свернуть свой собственный, чем сделать так, чтобы функция «один размер подходила всем» соответствовала вашим потребностям.
В вашем случае я бы не стал беспокоиться о модуле csv
.Здорово, когда вам нужно прочитать сложные данные, но для чего-то такого простого гораздо проще не использовать их.
missing, fill = 1.e20, "NA"
with open("test_io2.csv", 'w') as outfile:
for row in array:
line = ','.join([str(x) for x in row if x != missing else fill])
outfile.write(line + '\n')
Конечно, применяются обычные предостережения о проверке равенства чисел с плавающей запятой.Возможно, имеет смысл сделать что-то вроде if x < 9e19 else fill
.Это будет зависеть от вашего конкретного приложения, хотя.