>  Q&A  >  본문

python3.x - python二维数组

 texts = [[word for word in document.lower().split()] for document in documents]

我在网址我爱自然语言处理-如何计算两个文档的相似度(二)中看到下面一份代码。
对于>>> texts = [[word for word in document.lower().split()] for document in documents]的含义不是很理解。

>>>documents = ["Shipment of gold damaged in a fire",
... "Delivery of silver arrived in a silver truck",
... "Shipment of gold arrived in a truck"]
>>> texts = [[word for word in document.lower().split()] for document in documents]
>>> print texts
[['shipment', 'of', 'gold', 'damaged', 'in', 'a', 'fire'], ['delivery', 'of', 'silver', 'arrived', 'in', 'a', 'silver', 'truck'], ['shipment', 'of', 'gold', 'arrived', 'in', 'a', 'truck']]

对于一般的for var in list:这种形式,我是知道的。但是上面的那种二维数组,我就不是很理解为什么了。求助,帮忙分析一下

PHP中文网PHP中文网2740일 전536

모든 응답(2)나는 대답할 것이다

  • 巴扎黑

    巴扎黑2017-04-18 10:23:13

    이 구문을 "List Comprehensions"이라고 합니다.
    먼저 https://docs.python.org/2/tut...
    문서의 예제를 살펴보면 무슨 일이 일어나고 있는지 이해할 수 있을 것입니다. .

    회신하다
    0
  • ringa_lee

    ringa_lee2017-04-18 10:23:13

    파이썬에서 2차원 배열을 만드는 방법
    예를 들어 3*3 배열을 만듭니다
    방법 1 직접 정의

    [py]행렬 = [[0, 0, 0], [0, 0, 0], [0, 0, 0]][/py]

    방법 2 간접 정의

    행렬 = [[0 for i in range(3)] for i in range(3)]

    단지 .lower().split()은 파일에 있는 단어를 대문자와 소문자로 처리하여 분리하는 것입니다.

    회신하다
    0
  • 취소회신하다