Numpy'nin savetxt işlevini kullanarak bir dosyaya veri eklemeye çalışıyorum. Aşağıda minimum çalışma örneğidirpython3-numpy: Bir dosyaya numpy savetxt kullanarak ekleme
#!/usr/bin/env python3
import numpy as np
f=open('asd.dat','a')
for iind in range(4):
a=np.random.rand(10,10)
np.savetxt(f,a)
f.close()
aldığım hata yüzden sorun olabilir merak ediyorum bu hata python2 oluşmaz
File "/usr/lib/python3/dist-packages/numpy/lib/npyio.py", line 1073, in savetxt fh.write(asbytes(format % tuple(row) + newline)) TypeError: must be str, not bytes
hata türü hakkında bir şeydir . Bana yardım eden var mı?
Dosyanızı metin modu yerine ikili olarak açmanız gerekir: 'f = open ('asd.dat', 'ba')'. Ayrıca, bir hata oluşması durumunda dosya tanıtıcınızın düzgün bir şekilde kapatıldığından emin olmak için 'with' ifadesini kullanmayı da düşünebilirsiniz. – cel
Olası kopya: https://stackoverflow.com/questions/14437054/why-should-i-give-savetxt-a-file-opened-in-binary-rather-than-text-mode. – nwk
@cel Bu sorunu çözdü, teşekkürler – Meenakshi