список распечаток () вокруг каждого списка - PullRequest
0 голосов
/ 02 сентября 2018

У меня есть массив списка, содержащий лемматизированные слова. Когда я печатаю много из них одновременно, это вывод:

print(data[:3])

[list(['@', 'switchfoot', 'http', ':', '//twitpic.com/2y1zl', '-', 'Awww', ',', 'that', "'s", 'a', 'bummer', '.', 'You', 'shoulda', 'got', 'David', 'Carr', 'of', 'Third', 'Day', 'to', 'do', 'it', '.', ';', 'D'])
 list(['is', 'upset', 'that', 'he', 'ca', "n't", 'update', 'his', 'Facebook', 'by', 'texting', 'it', '...', 'and', 'might', 'cry', 'a', 'a', 'result', 'School', 'today', 'also', '.', 'Blah', '!'])
 list(['@', 'Kenichan', 'I', 'dived', 'many', 'time', 'for', 'the', 'ball', '.', 'Managed', 'to', 'save', '50', '%', 'The', 'rest', 'go', 'out', 'of', 'bound'])]

Я много чего пытался от него избавиться, но так не получалось, но когда я пытался:

a = [[i for i in range(5)] for _ in range(5)]
print(np.array(a))

вывод не с list () вокруг каждого списка:

array([[0, 1, 2, 3, 4],
       [0, 1, 2, 3, 4],
       [0, 1, 2, 3, 4],
       [0, 1, 2, 3, 4],
       [0, 1, 2, 3, 4]])

это означает, что это разные списки? Это просто случается со списком строк? Как я могу от этого избавиться, если это необходимо, конечно, спасибо за ваше время.

Ответы [ 2 ]

0 голосов
/ 02 сентября 2018
print(data[:3].tolist()) 

Конвертировать массив в список. При этом будет использован список отображения списка, а не массив списков.

Но, как было отмечено в комментариях, существует существенная разница между массивом списков и двумерным массивом.


Включая list - это относительно недавнее изменение в numpy. Я думаю, что это было добавлено, чтобы прояснить природу элементов массива dtype объекта.

Рассмотрим, например, массив с различными типами элементов:

In [532]: x=np.empty(5,object)
In [533]: x[0]=[1,2,3]; x[1]=(1,2,3); x[2]=np.array([1,2,3]); x[3]=np.matrix([1,2,3]); x[4]={0:1}
In [534]: x
Out[534]: 
array([list([1, 2, 3]), 
       (1, 2, 3), 
       array([1, 2, 3]), 
       matrix([[1, 2, 3]]),
       {0: 1}], 
       dtype=object)

Я настроил макет для ясности. Но обратите внимание, что без слов элементы списка и массива выглядели бы очень похоже.

Преобразовав массив в список, мы получаем форматирование по умолчанию для списка:

In [537]: x.tolist()
Out[537]: [[1, 2, 3], (1, 2, 3), array([1, 2, 3]), matrix([[1, 2, 3]]), {0: 1}]

Элементы массива и списка совпадают.

0 голосов
/ 02 сентября 2018

Вы можете перебрать 3 списка и распечатать их с * sympol впереди.

for i in data[:3]:
  print(*i)

в обычных случаях это убирает скобки и запятые списка и просто печатает его с пробелами. Должен признать, что я не понимаю, как вы получили результат, так что это всего лишь мои 2 цента. Надеюсь, это поможет:)

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