питон.Я не могу преобразовать числа из TXT-файла в верификатор с int - PullRequest
0 голосов
/ 22 февраля 2019

Я генерирую массив с помощью Python, а затем сохраняю его в текстовом файле.Когда я восстанавливаю его и пытаюсь преобразовать его в массив, и я работаю с ним, он выдает мне ошибку:

ufunc 'multiply' не содержит цикла с типами совпадения сигнатур dtype ('

Это код:

import numpy as np

lista=[1,2,3,4,5,6,7,8]
vector=np.array(lista)
print (vector)
lista.append(9)
vector=np.array(lista)
print (vector)
archivo= open('datos.txt','w')

archivo.write('%s'%vector)

archivo=open('datos.txt','r')
dades=archivo.read()


vector2=np.array(dades)

print(vector2)
print(vector2*2)

Можете ли вы помочь мне? .. Спасибо

1 Ответ

0 голосов
/ 22 февраля 2019

Когда вы читаете это в dades=archivo.read(), вы на самом деле получаете строку из 19 символов.

Чтобы превратить это в массив NumPy, вам нужно выполнить некоторую обработку:

>>> dades_as_ints = list(map(int, dades[1:-1].split()))
>>> vector2 = np.array(dades_as_ints)
array([1, 2, 3, 4, 5, 6, 7, 8, 9])

>>> vector2 * 2
array([ 2,  4,  6,  8, 10, 12, 14, 16, 18])

Я бы посоветовал вам взглянуть на numpy docs savetxt , в котором ваш массив будет храниться в удобочитаемом формате, или numpy.save для эффективного сохранения / загрузки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...