#python #string #matrix #integer
Вопрос:
у меня следующая проблема, я генерирую матрицу с этим кодом
g = open("text.txt", "r")
inte=int(g.readline())
for x in itertools.islice(g, inte):
maze.append(x.rstrip('n').split(' '))
print(maze)
это производит что-то вроде этого
[['1,', '0,', '0,', '0'], ['1,', '1,', '0,', '1'], ['1,', '1,', '0,', '0'], ['0,', '1,', '1,', '1']]
но я бы хотел, чтобы вместо этого получилось что-то подобное
[[1, 0, 0, 0], [1, 1, 0, 1], [1, 1, 0, 0], [0, 1, 1, 1]]
Ответ №1:
Как насчет этого? Было бы неплохо, если бы вы заменили строку, содержащую символ, который не является числом, на пустое пространство перед приведенным ниже оператором.
list(map(lambda x: list(map(lambda y: int(y.replace(',', '')), x)), a))