python3.x - python二維數(shù)組
問題描述
texts = [[word for word in document.lower().split()] for document in documents]
我在網(wǎng)址我愛自然語言處理-如何計(jì)算兩個(gè)文檔的相似度(二)中看到下面一份代碼。對(duì)于>>> 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’]]
對(duì)于一般的for var in list:這種形式,我是知道的。但是上面的那種二維數(shù)組,我就不是很理解為什么了。求助,幫忙分析一下
問題解答
回答1:這個(gè)語法叫 “List Comprehensions”先將https://docs.python.org/2/tut...文檔的例子過一遍,就會(huì)明白怎么回事的。
回答2:python中創(chuàng)建一個(gè)二維數(shù)組的方法例如創(chuàng)建一個(gè)3*3的數(shù)組方法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()是處理文件里面的單詞,大寫邊小寫,分割開。
相關(guān)文章:
1. mac OSX10.12.4 (16E195)下Mysql 5.7.18找不到配置文件my.cnf2. mysql - 怎么生成這個(gè)sql表?3. mysql儲(chǔ)存json錯(cuò)誤4. php - 公眾號(hào)文章底部的小程序二維碼如何統(tǒng)計(jì)?5. mysql - 表名稱前綴到底有啥用?6. mysql - 數(shù)據(jù)庫表中,兩個(gè)表互為外鍵參考如何解決7. Navicat for mysql 中以json格式儲(chǔ)存的數(shù)據(jù)存在大量反斜杠,如何去除?8. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語法實(shí)現(xiàn)存在即更新應(yīng)該使用哪個(gè)標(biāo)簽?9. mysql - 數(shù)據(jù)庫建字段,默認(rèn)值空和empty string有什么區(qū)別 11010. sql語句 - 如何在mysql中批量添加用戶?
