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. mysql优化 - mysql count(id)查询速度如何优化?2. angular.js - 不适用其他构建工具,怎么搭建angular1项目3. android-studio - Android 动态壁纸LayoutParams问题4. node.js - node_moduls太多了5. mysql主从 - 请教下mysql 主动-被动模式的双主配置 和 主从配置在应用上有什么区别?6. python - django 里自定义的 login 方法,如何使用 login_required()7. 主从备份 - 跪求mysql 高可用主从方案8. python如何不改动文件的情况下修改文件的 修改日期9. javascript - git clone 下来的项目 想在本地运行 npm run install 报错10. sql语句如何按or排序取出记录
