Python 列表list
列表list: [ ]
类似Java中的数组. 通过索引可以取到具体位置上的值.
names = ["ZhangYang","WangGui","LiQiang"]
print(names)
print(names[0])
#取数组中相邻的一些数
names = ["Ada","Sasha","Rose","Luke","Sara"]
print(names[1:3]) #顾头不顾尾, 这样写是取索引为1和2的值.
切片
#取数组最后一位的值
print(names[-1]) #从右向左数第一位. 也可以[-2],就是取倒数第二位的值. #取数组最后两位的值
print(names[-1:-3]) #这样写会报错,因为系统是从左向右数的, 所以-1数完后边已经没有了. print(names[-3:-1]) #正确写法 #取倒数第二个和倒数第三个
print(names[-2:]) #取前两位
print(names[3]) #相当于print(names[0:3]), 0省略了
追加
names.append("Nick")
添加数据并放在中间的位置. / 修改.
names = ["Ada","Sara","Candy","Cathy","Jessica","Diana"] #添加数据插入Sara前面
names.insert(1,"Venus") #想放在哪个位置,参数就写对应的索引. #修改. 把Candy换掉.
names[2] = 'XieDi"
删除
#删除方法1:
names.remove("Ada") #删除方法2:
del names[0] #删除方法3:
names.pop() #默认删掉最后一个值.
names.pop(1) #等同于del names[1]
查找 / 清空
# 查找Ada的位置
print(names.index("Ada"))
print(names[(names.index("Ada")] #根据找到的索引打印出对应位置的值 #当存在重复数据时, 计算重复数据的个数
names = ["Ada","Sara","Cathy","Candy","Diana","Ada"]
print(names.count("Ada")) #清空列表
names.clear()
反转 / 排序
#反转列表
names = ["Ada","Sara","Cathy","Candy","Diana","Ada"] names.reverse() #排序
names.sort()
添加列表 (类似合并数组) / 删掉列表
#合并列表
names2 = [1,2,3,4] names.extend(names2) #删掉列表names2
del names2
extend和append的区别:
a = ['','','']
b = ['','']
c = ['','']
a.extend(b) # 将另一个列表的元素添加到当前列表中
print(a)
print('=====================================')
a.append(c) # 将另一个列表作为一个元素添加到当前列表中
print(a) '''
返回值
['1', '2', '3', '2', '0']
======================================
['1', '2', '3', '2', '0', ['6', '3']]
'''
复制
#复制
name2 = names.copy()
数组包含数组时修改内嵌数组中的数据
# 数组包含数组时修改内嵌数组中的数据 # 方法1 : copy 浅复制
# 数组中内嵌数组的内容在复制时,其实复制的是该内嵌数组的地址,所以当修改该内嵌数组中的数据时,无论原始数组还是复制后的数组,其内嵌数组中的数据都会随之改变.
# 但是原始数组中其他值则是直接将该值指向复制后的数组,所以当原始数组中这些值改变时,复制后的数组对应位置的值保持不变.
names = ["Ada","Jessica","Cathy","Candy","Luke",["ada","Sara","Mika"]] names2 = names.copy()
names[2] = "Lucy"
names[5][0] = "ADA"
print(names) # Cathy被修改成Lucy; ADA改成大写.
print(names2) # Cathy不改变. ADA改成大写 # 方法2: import copy, 调用copy.copy()方法和列表中的copy()一样效果
import copy
names3 = copy.copy(names)
names[0] = "Lucy"
names[5][1] = "ADA"
print(names) # Cathy被修改成Lucy; ADA改成大写.
print(names3) # Cathy不改变. ADA改成大写 # 方法3: import copy, 调用copy. deepcopy()方法. 深copy, 可以达到复制内嵌列表中值的效果
names4 = copy.deepcopy(names)
names[3] = "Lucy"
names[5][0] = "ada"
print(names) # Cathy被修改成Lucy; ADA改成大写.
print(names4) # Cathy不改变. ADA也不改变 # 方法4, 切片的方式实现浅copy
names5 = names[:] # 方法5, 另外一种浅copy的方法
names6 = list(names) # 浅copy在银行公共帐户情形中非常有用. 夫妻二人共开同一个帐户时,每个人取钱都会影响帐户中的总额.
列表的循环 / 跳着打印列表中的值
# 列表的循环
for i in names:
print(i) # 跳着打印列表中的值
print(names[0:-1:2]) # 每隔一个打印一次. 2代表步长.
print(names[::2]) # 0和-1都可以省略,所以写成这样.
Python 列表list的更多相关文章
- python 列表排序
转自http://www.iplaypython.com/jinjie/jj114.html reverse()方法 将列表中元素反转排序,比如下面这样>>> x = [1,5,2, ...
- python列表、元祖、字典
python列表 ['a','1','vs2'] 里面的值可以改 python元祖 ('a','1','css','sdf12') 里面的值不能改 python字典 {'s ...
- Python列表、元组、字典和字符串的常用函数
Python列表.元组.字典和字符串的常用函数 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中 ...
- Python 列表
python 列表 列表的特点 1.列表是一种可变的数据类型,这点是跟元组有区别的 2.列表中的值是有序的,并且可存放重复的值,这点跟set有区别的 3.python中的列表类似于其它语言中的数组 4 ...
- python 列表生成器
python 列表生成器 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 一个循环 在C语言等其他语言中,for循环一般是这样的 ...
- [转载] Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...
- Python 列表如何获得一个指定元素所在的下标
在使用Python3.4读取txt数据到列表,由于编码问题,读取到的数据通常会出现'\ufeffX'(x为你想要的数据).这时候如果需要把列表中的数据由字符串转换到数值型的数据的进行数据分析的话就会出 ...
- python列表的常用操作方法
主要介绍了Python中列表(List)的详解操作方法,包含创建.访问.更新.删除.其它操作等,需要的朋友可以参考下. 1.创建列表.只要把逗号分隔的不同的数据项使用方括号括起来即可 List = [ ...
- !!对python列表学习整理列表及数组详细介绍
1.Python的数组分三种类型:(详细见 http://blog.sina.com.cn/s/blog_6b783cbd0100q2ba.html) (1) list 普通的链表,初始化后可以通过特 ...
- (转载)Python 列表(list)操作
(转载)http://blog.csdn.net/facevoid/article/details/5338048 创建列表sample_list = ['a',1,('a','b')] Python ...
随机推荐
- 解决idea的项目启动报404的问题
最近在学习IDEA,由于之前一直使用的是Eclipse,所以初次接触IDEA就接触到了不少的坑,其中最让人头疼的大概就是如何让IDEA顺利的启动起来了,这方面我就不细讲了,网上已经有了不少的教程,稍后 ...
- apt-get Ubuntu本地ISO镜像入源
转自http://blog.csdn.net/binchel/article/details/21486999 在没有网络的情况下,本地镜像源不实为一个上等的权宜之计! 目前linux的两大主流包管理 ...
- Java——接口
被interface修饰的类,叫接口接口里的方法都是抽象的,不能实现.用implements关键字可以让一个类来实现该接口.接口:一个类在继承另一个类的同时.还可以实现多个接口.接口的出现避免了单继承 ...
- Java框架数据库连接池比较 [转贴 2010-3-20 9:57:51]
现在常用的开源数据连接池主要有c3p0,dbcp和proxool三种,其中: ¨hibernate开发组推荐使用c3p0; ¨spring开发组推荐使用dbcp (dbcp连接池有weblogic连接 ...
- 推荐个Mac OSX下的Code Editor:Atom
首先只是当Editor用,不是整成IDE级. 先说几个大家耳熟能详的: 1.Sublime,Sublime在Mac下的安装并不完全,CLI启动需要自己ln个链接.还有一些其他原因,比如Packages ...
- SQL基本语句的优化10个原则
原则一:尽量避免在列上进行运算,这样会导致索引失效. 例如: ; 优化: SELECT * FROM table WHERE d >= '2011-01-01'; 原则二:使用JOIN时,应该用 ...
- Java并发-线程安全性
首先了解一下多线程的概念 多线程:两段或以上的代码同时进行,多个顺序执行流. 并发和并行的区别 并发:做一下这个做一下那个. 并行:同时进行. 线程和进程的区别 进程:资源分配的基本单位,运行中的程序 ...
- JS中sessionstorage的getItem/setItem/removeItem/clear
function people(){ } var animal = { name: "cc", age:16, say:function(m1,m2){ alert("他 ...
- nodejs环境 + 入门 + 博客搭建
NodeJS:NodeJS是一个使用了Google高性能V8 引擎 的服务器端JavaScript实现.它提供了一个(几乎)完全非阻塞I/O栈,与JavaScript提供的闭包和匿名函数相结合,使之成 ...
- tomcat7性能调优与配置(以windows版为例)
一.配置tomcat服务状态查看帐号(E:\Tomcats\apache-tomcat-7.0.73Test\conf下面的tomcat-users.xml中)加入:<user username ...