Python 代码阅读合集介绍:为什么不推荐Python初学者直接看项目源码

本篇阅读的代码实现了展开嵌套列表的功能,将一个嵌套的list展开成一个一维list(不改变原有列表的顺序)。

本篇阅读的代码片段来自于30-seconds-of-python。

flatten

def flatten(lst):
return [x for y in lst for x in y] # EXAMPLES
flatten([[1,2,3,4],[5,6,7,8]]) # [1, 2, 3, 4, 5, 6, 7, 8]

flatten函数接收一个嵌套列表(以列表为元素的列表),返回一个按照原有顺序展开后的一维列表。

该函数使用了列表推导式进行数据处理。该推导式使用了两层for循环,等价于

def flatten(lst):
flatten_list = []
for y in lst:
for x in y:
flatten_list.append(x)
return flatten_list

最新文章

  1. ctrl+c,ctrl+d,ctrl+z在linux中意义
  2. HTML的格式、内容容器、表格标签
  3. vue 倒计时
  4. 使用 Aircrack-ng 破解 WEP 和 WPA/WPA2 加密的 Wi-Fi 密码。(转)
  5. 栈stack的C实现
  6. 简单的Windows登陆界面设计
  7. Android 等比例缩放图片
  8. ios 页面滑入滑出
  9. 【JAVA高级】——myEclipse连接mysql启动数据库服务
  10. [转]Breaking Bad With DTrace
  11. mysql 批量插入优化之rewriteBatchedStatements
  12. Vue组件的定义、注册和调用
  13. pandas用法之二
  14. fedora 28/29 配置 C++ 环境
  15. 基于TCAM 的高速路由查找
  16. The Golden Age CodeForces - 813B (数学+枚举)
  17. Flask web开发之路十
  18. Linux下常用的编辑文件与保存命令
  19. Elasticsearch学习之head插件安装
  20. Oracle之批量生成数据

热门文章

  1. Linux 安装配置 NET模式网络环境配置
  2. Java抽象类(abstract)
  3. 前端性能优化之http缓存
  4. HTTP系列之:HTTP中的cookies
  5. Python3-sqlalchemy-orm 创建关联表带外键并查询数据
  6. CentOS 7.3安装Zabbix3.2
  7. ClientValidationFunction
  8. layui日期选择无效的问题
  9. Android View post 方法
  10. 使用ImageMagick操作gif图