Я не уверен, что это хороший подход.
from numpy import array
import ast
import re
k = '[array([ 0, 269, 175, 377]), array([ 0, 56, 149, 163])]'
val = re.findall(r"\((.*?)\)", k)
val = list(map(ast.literal_eval, val))
val = list(map(array, val))
print(val)
Вывод:
[array([ 0, 269, 175, 377]), array([ 0, 56, 149, 163])]
- Использование Regex для извлечения содержимого между
()
- Применить
ast.literal_eval
- Применить
np.array