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:這種形式,我是知道的。但是上面的那種二維數組,我就不是很理解為什么了。求助,幫忙分析一下
問題解答
回答1:這個語法叫 “List Comprehensions”先將https://docs.python.org/2/tut...文檔的例子過一遍,就會明白怎么回事的。
回答2:python中創建一個二維數組的方法例如創建一個3*3的數組方法1 直接定義
[py]matrix = [[0, 0, 0], [0, 0, 0], [0, 0, 0]][/py]
方法2 間接定義
matrix = [[0 for i in range(3)] for i in range(3)]
一種方法而已,.lower().split()是處理文件里面的單詞,大寫邊小寫,分割開。
相關文章:
1. 我的html頁面一提交,網頁便顯示出了我的php代碼,求問是什么原因?2. tp6表單令牌3. docker 17.03 怎么配置 registry mirror ?4. java 排序的問題5. 我在centos容器里安裝docker,也就是在容器里安裝容器,報錯了?6. django - 后臺返回的json數據經過Base64加密,獲取時用python如何解密~!7. node.js - node 客戶端socket一直報錯Error: read ECONNRESET,用php的socket沒問題哈。。8. 數據庫 - 使用讀寫分離后, MySQL主從復制延遲會導致讀不到數據嗎?9. 老哥們求助啊10. javascript - canvas 可以實現 PS 魔法橡皮擦的功能嗎?
