Полные значения не записываются в файл, используя Python - PullRequest
1 голос
/ 12 марта 2020

Моя идея - записать в файл некоторое количество бит (почти 64 * 4800 бит). Он записывает, но не все биты.

Вывод консоли выглядит как

[1. 1. 0. ... 1. 0. 1.]

Если я уменьшу количество сохраняемых битов, это будет работать.

Я вставлю свой код сюда , Этот код выполняет выборку аналога цифрового

y= function(x) #  Inside this function I am generating binary values and stored to y
################  y is in numpy.ndarray form
################  x is a sine wave

f=open('filename.txt',"w+")
f.write(str(y))  #we have to convert the numpy.ndarray to str. 
f.close()

, когда я открываю свой файл filename.txt, он показывает двоичные значения как

[1. 1. 0. ... 1. 0. 1.]

, как в консоли.

Пожалуйста, помогите мне решить эту проблему. Мне нужно, чтобы все биты (64 * 4800) были сохранены внутри файла

1 Ответ

2 голосов
/ 12 марта 2020

Попробуйте сначала преобразовать массив numpy в список:

y = function(x) #  Inside this function I am generating binary values and stored to y
################  y is in numpy.ndarray form
################  x is a sine wave
y_list = y.tolist()  # Convert to python list
# use the with context manager and you don't need to call .close() explicitly
with open('filename.txt',"w+") as f:
    f.write(str(y_list))  #we have to convert the numpy.ndarray to a list and then  to str(y_list) which will write the entire bits. 
...