Tôi đang cố nối dữ liệu vào một tệp bằng hàm savetxt của numpy. Dưới đây là ví dụ làm việc tối thiểupython3-numpy: Gắn thêm vào một tệp bằng cách sử dụng một số tập tin đính kèm
#!/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()
Các lỗi mà tôi nhận được một cái gì đó về loại lỗi
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
lỗi này không xảy ra trong python2 vì vậy tôi tự hỏi những gì vấn đề này có thể là . Ai có thể giúp tôi không?
Bạn phải mở tệp của mình dưới dạng nhị phân thay vì chế độ văn bản: 'f = open ('asd.dat', 'ba')'. Ngoài ra, hãy xem xét sử dụng câu lệnh 'with' để đảm bảo rằng việc xử lý tệp của bạn được đóng đúng cách trong trường hợp xảy ra lỗi. – cel
Có thể trùng lặp: https://stackoverflow.com/questions/14437054/why-should-i-give-savetxt-a-file-opened-in-binary-rather-than-text-mode. – nwk
@cel Điều đó giải quyết được vấn đề, cảm ơn – Meenakshi