Самый простой способ - использовать понимание списка, потому что оно автоматически генерирует список вывода для вас, который может быть легко преобразован в пустой массив.Вы можете сделать это, используя несколько циклов for, но тогда вы застряли, создав свой список, подсписки и добавив к ним.Хотя это и не сложно, код выглядит более элегантно с учетом списка.
Попробуйте это:
newList = np.array([[int(b) for b in a] for a in example_list])
newList теперь выглядит следующим образом:
>>> newList
... [[0, 1, 0], [1, 0, 1]]
Примечание: здесь нет необходимости вызывать карту, хотя это, безусловно, работает,
Так что здесь происходит?Мы перебираем ваш первоначальный список строк (example_list) по пунктам, а затем перебираем каждый символ в текущем элементе.Функционально это эквивалентно ...
newList = []
for a in example_list:
tmpList = []
for b in a:
tmpList.append(int(b))
newList.append(tmpList)
newList = np.array(newList)
Лично я считаю, что кратность циклов for проще для начинающих.Однако, как только вы поймете список, вы, вероятно, не захотите возвращаться.