0
我需要將文本文件中的值讀入數組Z.這可以很好地使用單個文件ChiTableSingle,但是當我嘗試使用多個文件時失敗。它似乎是正確讀取行,並生成Z,但只給[z] [],然後我得到錯誤,設置一個序列的數組元素。讀取多個文件和數組
這是我當前的代碼:
rootdir='C:\users\documents\ChiGrid'
fileNameTemplate = r'C:\users\documents\ContourPlots\Plot{0:02d}.png'
for subdir,dirs,files in os.walk(rootdir):
for count, file in enumerate(files):
fh=open(os.path.join(subdir,file),'r')
#fh = open("ChiTableSingle.txt");
print 'file is '+ str(file)
Z = []
for line in fh.readlines():
y = [value for value in line.split()]
Z.append(y)
print Z[0][0]
fh.close()
plt.figure() # Create a new figure window
Temp=open('TempValues.txt','r')
lineTemp=Temp.readlines()
for i in range(0, len(lineTemp)):
lineTemp[i]=[float(lineTemp[i])]
Grav=open('GravValues2.txt','r')
lineGrav=Grav.readlines()
for i in range(0, len(lineGrav)):
lineGrav[i]=[float(lineGrav[i])]
X,Y = np.meshgrid(lineTemp, lineGrav) # Create 2-D grid xlist,ylist values
plt.contour(X, Y, Z,[1,2,3], colors = 'k', linestyles = 'solid')
plt.savefig(fileNameTemplate.format(count), format='png')
plt.clf()
對於使用y = [...]的單個文件它都可以正常工作,但是仍然需要先將其轉換爲浮點數或其他東西?我也嘗試過np.loadtxt,但那是說沒有屬性readlines等。 – user1841859