Python序列之列表 (list)
作者博文地址:http://www.cnblogs.com/spiritman/
列表是Python中最基本的数据结构,是Python最常用的数据类型。Python列表是任意对象的有序集合,通过索引访问指定元素,第一个索引是0,第二个索引是1,依此类推。列表可变对象,支持异构、任意嵌套。
创建一个列表
list1 = [] #创建空列表
list2 = ['a','b','c','d','e']
list3 = ['a','b','c',1,2,3]
列表支持的操作方法及实例展示
可以使用dir(list)查看列表支持的所有操作
append
功能:列表添加元素,添加至列表末尾
语法: L.append(object) -- append object to end
L = ['a','c','b','d']
L.append('e')
结果:L
['a','c','b','d','e']
7 l = [1,2,3]
8 L.append(l)
9 结果:L
10['a','c','b','d',[1,2,3]]
count
功能:统计指定元素在列表中的个数
语法: L.count(value) -> integer -- return number of occurrences of value
L = [1,2,3,4,5,5]
L.count(5)
结果:2
l = [1,2,3,4,5,[5,6]]
l.count(5)
结果:1 #只统计第一层的元素个数
extend
功能:迭代字符元素或列表元素
语法: L.extend(iterable) -- extend list by appending elements from the iterable
L= ['a','b','c','d']
l = [1,2,3]
L.extend('e')
结果:L
['a','b','c','d','e']
L.extend(l) #注意与append的区别
结果:L
['a','b','c','d',1,2,3]
index
功能:定位列表中的指定元素
语法: L.index(value, [start, [stop]]) -> integer -- return first index of value. Raises ValueError if the value is not present.
L = ['a','b','c','d']
L.index('c')
结果:2
L.index('f')
结果:Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: 'f' is not in list
insert
功能:在指定索引位置的元素前面插入新的元素
语法:L.insert(index, object) -- insert object before index
L = ['a','b','c','d']
L.insert(2,'e')
结果:L
['a','b','e','c','d']
pop
功能:删除指定索引值的元素,返回值为当前删除的元素的值。不指定索引值,默认删除最后一个元素
语法:L.pop([index]) -> item -- remove and return item at index (default last). Raises IndexError if list is empty or index is out of range.
L = ['a','b','c','d']
L.pop()
结果:'d'
L.pop(2)
结果:'c'
remove
功能:删除列表中指定的元素
语法:L.remove(value) -- remove first occurrence of value. Raises ValueError if the value is not present.
L = ['a','b','c','d']
L.remove('c')
结果:print L
['a','b','d']
reverse
功能:用于反向列表中的元素
语法:L.reverse() -- reverse *IN PLACE*
L = ['a','b','c','d']
L.reverse()
结果:print L
['d','c','b','a']
sort
功能:对列表中的元素进行排序。
语法:L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;
cmp(x, y) -> -1, 0, 1
L = ['d','b',1,2,3,'a','d']
L.sort()
结果:print L
[1,2,3,'a','b','c','d'] L = ['d','b',1,2,3,'a','d',['ab','bc']]
L.sort()
结果:print L
[1, 2, 3, ['ab', 'bc'], 'a', 'b', 'd', 'd']
L1 + L2
功能:合并两个列表,返回一个新的列表,原列表不变
语法:L = L1 + L2 -> list
L1 = ['a','b','c']
L2 = [1,2,3]
L = L1 + L2
结果:
print L
['a','b','c',1,2,3]
print L1
['a','b','c']
print L2
[1,2,3]
L * n
功能:重复输出列表n次,返回一个新列表,原列表不变
语法:L = L1 * n
L1 = ['a','b','c','d']
L = L1 * 3
结果:
print L
['a','b','c','d','a','b','c','d','a','b','c','d']
print L1
['a','b','c','d']
作者博文地址:http://www.cnblogs.com/spiritman/
Python序列之列表 (list)的更多相关文章
- Python 序列、列表(List)、元组(Tuple)
序列 序列是Python中最基本的数据结构,包括字符串.列表.元组. 序列,顾名思义,是有序的,序列都有索引,都能进行索引.切片(截取).加(连接).乘(倍增).检查成员的操作. 因为序列有序,可通过 ...
- Python序列之列表(一)
在Python中,列表是一种常用的序列,接下来我来讲一下关于Python中列表的知识. 列表的创建 Python中有多种创建列表的方式 1.使用赋值运算符直接赋值创建列表 在创建列表时,我们直接使用赋 ...
- Python序列结构--列表(一)
列表 列表**包含若干元素的有序连续内存空间**,当列表增加或删除元素时,**列表对象自动进行内存的扩展或收缩**,从而**保证相邻元素之间没有缝隙**.但插入和删除非尾部元素时涉及列表元素大量的移动 ...
- python 序列结构-列表,元组,字典,字符串,集合
列表 """ name_list.__add__( name_list.__getslice__( name_list.__new__( name_list.append ...
- python序列元素引用容易出错的地方
python序列分列表和元组,不同之处在于元组的元素不能修改.元组使用小括号,列表使用方括号.元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可.举个简单的例子,a1是一个元组,a2是一个列表 ...
- Python基础:序列(列表、元组)
一.概述 列表(list)是由一个个 Python对象 组成的序列.其中,Python对象 可以是任何类型的对象,包括 Python标准类型(数值.字符串.列表.元组和字典)以及 用户自定义类型(类) ...
- Python学习笔记2:构造序列:列表推导和生成器表达式
欢迎访问个人网站:www.comingnext.cn 1. 关于Python内置序列类型 a. 按能否存放不同类型的数据区分 容器序列: list.tuple 和collections.deque这些 ...
- python 序列:字符串、列表、元组
python 序列:字符串.列表.元组 序列:包含一定顺序排列的对象的一个结构 内建函数:str() list() tuple() 可以使用str(obj)可以把对象obj转换成字符串 list( ...
- Python基础系列----序列(列表、元组、字符串)
1.定义 1 ...
随机推荐
- VC++程序运行时间测试函数
0:介绍 我们在衡量一个函数运行时间,或者判断一个算法的时间效率,或者在程序中我们需要一个定时器,定时执行一个特定的操作,比如在多媒体中,比如在游戏中等,都会用到时间函数.还比如我们通过记录函数或者算 ...
- [图解tensorflow源码] [原创] Tensorflow 图解分析 (Session, Graph, Kernels, Devices)
TF Prepare [图解tensorflow源码] 入门准备工作 [图解tensorflow源码] TF系统概述篇 Session篇 [图解tensorflow源码] Session::Run() ...
- Spring Cloud 微服务项目实现总架构一
Spring Cloud 服务是一种分布式服务,包括配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,主节点选举, 分布式session, 集群状态等公共组件. 一 注册机 ...
- BCNF范式及其分解方法(对一次Lab作业的总结)
BCNF是比第三范式更严格一个范式.它要求关系模型中所有的属性(包括主属性和非主属性)都不传递依赖于任何候选关键字.也就是说,当关系型表中功能上互相依赖的那些列的每一列都是一个候选关键字时候,该满足B ...
- ExcelVBA实现一键生成word文字报告及批量操作[原创]
在很多工作中,经常需要写一些类似的报告,使用同一个模板,只是里面的数据不同,人工操作工程量大且容易出错,如果能用程序直接实现可以省去不少麻烦. 本文使用ExcelVBA实现,主要思路是使用word邮件 ...
- 20155212 C语言实现linux下pwd命令的两种方法
20155212 C语言实现linux下pwd命令的两种方法 学习pwd命令 通过man pwd命令查看 pwd [OPTION],一般不加参数 -P显示当前目录的物理路径 -L显示当前目录的连接路径 ...
- 20155210 潘滢昊2016-2017-2 《Java程序设计》第9周学习总结
20155210 2016-2017-2 <Java程序设计>第9周学习总结 教材学习内容总结 JDBC驱动的四种类型(按操作方式分类的): JDBC-ODBC Bridge Driver ...
- BZOJ2539 Spoj 10707 Count on a tree II
题面 题解 因为这道题目我也不太会做,所以借鉴了一下大佬heyujun的博客 如果不强制在线,这道题目是树上莫队练手题 我们知道莫队是离线的,但是万一强制在线就凉凉了 于是我们就需要一些操作:树分块 ...
- Atcoder2167 Blackout
Atcoder2167 Blackout zjoi讲过的一道神题啊... 首先把每个黑点(a,b)看成一条有向边a->b,然后这个图就变成了一张有自环的有向图. 然后弱联通块就分开了,对于每个连 ...
- 当使用了相对路径 <base href="<%= basePath %>" /> 后,全局都只能使用相对路径
<% String path = request.getContextPath(); String basePath = request.getScheme() + "://" ...