python中列表的操作以及使用列表实现栈和队列

原创 2018年04月15日 08:50:54

>>> a = [1, 2, 3, 4, 5, 6]

>>> a.append(45)

>>> a

[1, 2, 3, 4, 5, 6,45]

首先我们建立了一个列表 a。然后调用列表的方法 a.append(45) 添加元素 45 到列表末尾。你可以看到元素 45 已经添加到列表的末端了。有些时候我们需要将数据插入到列表的任何位置,这时我们可以使用列表的 insert() 方法。

>>> a.insert(0, 1) # 在列表索引 0 位置添加元素 1

>>> a

[1, 1, 2, 3, 4, 5, 6,45]

>>> a.insert(0, 111) # 在列表索引 0 位置添加元素 111

>>> a

[111, 1, 1, 2, 3, 4, 5, 6,45]

其中insert的第一个参数为插入的位置,列表中有n个元素的情况下第一个参数的取值范围为-n~n,当第一个参数大于n的时候统一当做n处理,当第一个参数小于-n的时候统一当做-n处理

比如

>>> a.insert(100, 100) # 在列表最后一个索引之后添加100

>>> a.insert(-100, 100) # 在列表第一个索引之前添加100

列表方法 count(s) 会返回列表元素中 s 的数量。我们来检查一下 45 这个元素在列表中出现了多少次。

>>> a.count(45)

1

如果你想要在列表中移除任意指定值,你需要使用 remove() 方法。

 

>>> a.remove(45)

>>> a

[111, 1, 1, 2, 3, 4, 5, 6]

现在我们反转整个列表。

>>> a.reverse()

>>> a

[6, 5, 4, 3, 2, 1, 1, 111]

怎样将一个列表的所有元素添加到另一个列表的末尾呢,可以使用列表的 extend() 方法。

 

>>> b = [45, 56, 90]

>>> a.extend(b) # 添加 b 的元素而不是 b 本身

>>> a

[6, 5, 4, 3, 2, 1, 1, 111, 45, 56, 90]

给列表排序,我们使用列表的sort() 方法,排序的前提是列表的元素是可比较的。

 

>>> a.sort()

>>> a

[1, 1, 2, 3, 4, 5, 6, 45, 56, 90]

你也能使用 del 关键字删除指定位置的列表元素。

 

>>> del a[-1]

>>> a

[1, 1, 2, 3, 4, 5, 6, 45, 56]

使用列表实现栈和队列:

栈是一种后进先出的数据结构,我们可以使用列表的append和pop方法来实现

>>>a = [1, 2]

>>> a.append(1) # 入栈

>>>a.pop() # 最后一个元素出栈

>>>1

队列是一种先进先出的数据结构,我们可以使用列表的append和pop(0)方法来实现

>>>a = [2, 1]

>>> a.append(1) # 入队列

>>>a.pop(0) # 第0个元素出队列

>>>2

也就是说队列的pop方法可以实现删除队列中指定索引元素的功能

【系列课】Springmvc4+Mybatis3+Spring4+Bootstrap3之列表

【技术架构】 把手教你整合最优雅SSM4框架: 当我们看大部分教学课堂中把SSH作为最核心教学内容。但实际互联网企业应用中,SpringMVC可以完全替代Struts系列,注解方式,通过restful风格,再配上企业实战架构SpringMVC4 , Spring 4, MyBatis3,JQuery,JQueryUI,Echarts3,Bootstrap3,Ajax堪称完美。
  • 2017年05月02日 22:56

Python 如何用列表实现栈和队列

用列表实现栈和队列
  • NFR413
  • NFR413
  • 2017-11-05 13:23:56
  • 306

用Python中的列表模拟栈和队列

栈: class Stack: # implementing a stack using python lists def __init__(self): self....
  • flyapy
  • flyapy
  • 2014-07-16 21:54:08
  • 606

用python实现堆栈和队列

一,利用python列表实现堆栈        堆栈是一个后进先出的数据结构,其工作方式就像一堆汽车排队进去一个死胡同里面,最先进去的一定是最后出来。   我们可以设置一个类,用列表来存放栈中元素的信...
  • u010786109
  • u010786109
  • 2014-10-31 10:01:11
  • 6956

Python3.2 官方文档教程---列表当做栈、队列和递推式列表

3.1.1 把列表当做栈来用 列表中的方法很容易实现把列表当做栈来用,在栈中元素师“后进先出”。给栈顶添加单个元素可以用方法append(). 从栈顶检索一个元素用不带参数方法pop(),例如: ...
  • sxb0841901116
  • sxb0841901116
  • 2014-04-07 22:58:10
  • 1392

python实现stack(栈)和队列(queue)

栈和队列是两种基本的数据结构,同为容器类型。两者根本的区别在于: stack:后进先出 栈示意图queue:先进先出 队列示意图 注意,stack和queue是没有查询具体某一个位置的...
  • hjhmpl123
  • hjhmpl123
  • 2016-10-29 18:31:27
  • 352

Python(五)python字符串的切片与列表和元组

1.python下特有的字符串索引规则:第一个字符的索引是0,最后一个字符的索引是-1 如下图所示: a[-1]   因为是最后表示是最后一个字符,所以是n a[0]    因为表示是第一个字符,所以...
  • u012402276
  • u012402276
  • 2015-10-15 13:32:22
  • 554

python中列表的基本操作

#encoding:utf-8# 访问列表元素 print("\n访问列表元素") bicycles = ['terk', 'cannonddale', 'redline', 'specialized...
  • Duke10
  • Duke10
  • 2017-10-29 15:51:52
  • 427

Python列表对象实现原理

新媒体管家 点击上方“程序员大咖”,选择“置顶公众号” 关键时刻,第一时间送达! Python中的列表基于PyListObject实现,列表支持元素的插入、删除、...
  • Px01Ih8
  • Px01Ih8
  • 2017-12-04 00:00:00
  • 217

python中列表(list)的基本操作

python中列表的基本操作
  • sinat_34474705
  • sinat_34474705
  • 2017-04-01 18:29:47
  • 2791
收藏助手
不良信息举报
您举报文章:python中列表的操作以及使用列表实现栈和队列
举报原因:
原因补充:

(最多只允许输入30个字)