文档章节

Python list列表的高级应用

AllenOR灵感
 AllenOR灵感
发布于 2017/09/10 01:20
字数 245
阅读 3
收藏 0

在python的所有数据结构中,list具有重要地位,而且非常方便。

第一,list像栈一样使用。

stack = [1,2,3]
# 先进元素4,5
stack.append(4)
stack.append(5)
# 先出元素5,4
stack.pop() # 删除元素5
stack.pop() # 删除元素4
stack 
# [1,2,3]

第二,list像队列一样使用。

from collections import deque
queue = deque([1,2,3])
# 先进元素4,5
queue.append(4)
queue.append(5)
# 先出元素1,2
queue.popleft() # 删除元素1
queue.popleft() # 删除元素2
queue
# [3,4,5]

第三,列表与过滤函数filter()的应用。

filter(lambda x: x%2==0, range(10))
# [0,2,4,6,8]

第四,列表与迭代函数map()的应用。

map(lambda x: x%2==0, range(10))
# [True, False, True, False, True, False, True, False, True, False]

第五,列表与汇聚函数reduce()的应用。

reduce(lambda x,y: x+y, range(10))
# 45

第六,列表与enumerate()函数。

for i, v in enumerate(['tic', 'tac', 'toe']):
  print i, v

# output
0 tic
1 tac
2 toe

第七,列表与zip()函数。

a = [1,2,3]
b = [4,5,6]
zippend = zip(a,b)
# zippend = [(1,4),(2,5),(3,6)]
zip(*zippend)
# [(1,2,3),(4,5,6)]

本文转载自:http://www.jianshu.com/p/812284a76247

共有 人打赏支持
AllenOR灵感
粉丝 10
博文 2634
码字总数 82983
作品 0
程序员
人人都能学会的python编程教程14:高级特性1

切片 取一个list或tuple的部分元素是非常常见的操作。比如,一个list如下: L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] 第一个元素的索引是0,第二个元素的索引是1......,倒数第一个...

编程老司机
05/10
0
0
人人都能学会的python编程教程15:高级特性2

生成器 如果你想要一百万个数,而这些数里只有一百个数是你经常要用的,剩下的都几乎不怎么会用到,那么如果直接把这一百万个数全部放在list中是不明智的因为这会浪费较多存储空间,生成器就...

编程老司机
05/10
0
0
人人都能学会的python编程教程(基础篇)完整版

人人都能学会的python编程教程1:第一行代码 人人都能学会的python编程教程2:数据类型和变量 人人都能学会的python编程教程3:字符串和编码 人人都能学会的python编程教程4:关系运算符与循...

编程老司机
05/10
0
0
python——高级特性(2)

迭代 在python中迭代是通过for ....in...完成的,只要是可迭代对象都可以迭代 #!usr/bin/python 008000;">-- coding:UTF-8 -- #tuple迭代t=[(1,'a','z'),(2,'b','z')]for x,y,z in t: #enume......

乌云上
05/04
0
0
python编程之赋值和拷贝的区别概述及操作excel数据库(图)

python编程之赋值和拷贝的区别概述及操作excel数据库(图) 一、赋值 在Python中,对象的赋值就是简单的对象引用,这点和C++不同,如下所示: a = [1,2,”hello”,[‘python’, ‘C++’]] b ...

原创小博客
08/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

no such module 'pop'问题

在github上 clone 了一个 swift 项目,编译时提示"no such module 'POP'"错误,查了一下居然是因为podfile中指定的最低版本是iOS 11.0,大于我测试手机的iOS版本10.3.3,将Podfile中的最低版...

yoyoso
32分钟前
0
0
redis 系列一 -- 简介及安装

1.简介 redis -- remote dictionary server 远程字典服务 使用 C 语言编写; 高性能的 key-value数据库; 内存数据库,支持数据持久化。 Redis 是一个开源(BSD许可)的,内存中的数据结构存...

imbiao
55分钟前
3
0
nginx log记录请求响应时间

有时为了方便分析接口性能等,需要记录请求的时长,通过修改nginx的日志格式可以做到,如 添加一个新的log_format log_format timed_combined '$remote_addr - $remote_user [$time_local] "...

swingcoder
今天
4
0
Spring MVC之RequestMappingHandlerMapping匹配

对于RequestMappingHandlerMapping,使用Spring的同学基本都不会陌生,该类的作用有两个: 通过request查找对应的HandlerMethod,即当前request具体是由Controller中的哪个方法进行处理; 查...

爱宝贝丶
今天
3
0
Java Web--增删改查之二界面后台java代码(转载参考)

/** *  *//** * @author Administrator * */package dao; import java.sql.*;public class DBConn {/** * 链接数据库 * @return */  ...

小橙子的曼曼
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部