Python 将数组写入at文本文件时的输出格式

Python 将数组写入at文本文件时的输出格式,python,numpy,file,csv,Python,Numpy,File,Csv,作为一个更大项目的一部分,我正在将数组写入一个文本文件。我写了一个小代码片段: import numpy as np import csv data99 = np.array([[1.,2.,3.],[4.,5.,6.],[7.,8.,9.],[10.,11.,12.]]) data98 = np.array([99,98,97,96]) for i in range(len(data98)): data99[i,2] = data98[i] with open('zzz.tx

作为一个更大项目的一部分,我正在将数组写入一个文本文件。我写了一个小代码片段:

import numpy as np
import csv

data99 = np.array([[1.,2.,3.],[4.,5.,6.],[7.,8.,9.],[10.,11.,12.]])


data98 = np.array([99,98,97,96])

for i in range(len(data98)):
    data99[i,2] = data98[i]

with open('zzz.txt', 'w') as ab:
    csv.writer(ab, delimiter = ',').writerows(data99)
它输出的格式正是我想要的:

1.0,2.0,99.0

4.0,5.0,98.0

7.0,8.0,97.0

10.0,11.0,96.0
当我尝试在较大的项目中使用相同的写入功能时:

from PIL.TiffTags import TAGS

import numpy as np

import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from math import sqrt

import tkinter
from tkinter import ttk
from tkinter import *
from tkinter import filedialog

import csv
# .
# .
# .
with open('Terrain_deviations.txt', 'w') as ab:
    csv.writer(ab, delimiter = ',').writerows(deviations)
发布的格式不同:

[[ 0.         20.         -9.55028766]]

[[ 0.        30.        -9.1716853]]

[[ 0.         40.         -9.02336858]]

[[ 0.         50.         -8.91502989]]

[[ 0.         60.         -8.61375907]]
这两个都是float64的数组。 数据99为(4,3) 偏差为(2324,3)


您必须使用numpy吗?你说的“格式不同”是什么意思?它在哪里不同?在python中,csv文件或将csv文件加载回程序时?
data99
是一个(4,3)数字数组。什么是偏差?偏差是一个(2324,3)数字数组(浮点64),我不必使用numpy。我是Python新手,根据我在教程和在线示例中的发现,这就是我迄今为止的发现。在data99中,它写入文件时没有括号,并且值之间有一个“,”。在偏差的情况下,数组的每一行都有括号,值之间没有“,”s,只有空格。你必须使用numpy吗?你说的“格式不同”是什么意思?它在哪里不同?在python中,csv文件或将csv文件加载回程序时?
data99
是一个(4,3)数字数组。什么是偏差?偏差是一个(2324,3)数字数组(浮点64),我不必使用numpy。我是Python新手,根据我在教程和在线示例中的发现,这就是我迄今为止的发现。在data99中,它写入文件时没有括号,并且值之间有一个“,”。对于偏差,数组的每一行都有括号,值之间没有“,”s,只有空格。