1、切片:
①.顾头不顾尾,从头开始取,但不包括最后一个。
②.从左向右数为正,从零开始,从右开始为负,从-1开始
如:
names=['1','2','3']
ames[-1]与names[2]效果相同
③.冒号左边没有数字时,表示从0开始;右边没有数字时,表示一直取到最后一个元素。
如:
names=['1','2','3']
names[0:2]与names[:2]效果相同
names[-2:] 表示从又数第二个元素一直取到最后一个元素。
④.可以通过列表名[*:$:&] 实现跳跃式切片 *,$分别表示开始结束的下标,&表示步长。
如:print(names[0:-1:2]) 表示从第一位开始到倒数第二位,每两个位输出一位
2、追加/插入/修改:
①列表名.append('***') 该方法默认追加到最后一位
②列表名.insert(下标,'***') 该方法可将想添加的元素插入想要的位置
③列表名[下标]='***' 直接将想要修改的值赋值给该位置
3、删除:
①列表名.remove('***')
②del 列表名/列表名[下标] 直接删除整个列表/删除特定下标位置的元素
③列表名.pop(默认值/下标) 删除最后一位的元素/删除特定下标位置的元素 4、查找:
**.index('***') 该方法将返回所查询的元素的下标
5、计数:
**.count('***') 该方法将返回所查元素在列表中的数目
6、反转:
**.reverse() 该方法将列表中的元素倒置
7、排序:
**.sort() 该方法将对列表进行排序,排序规则按照字符串首个字符在ASCII码中的顺序进行排列
8、扩展:
**.extend() 该方法可以队列表进行扩展,也可以利用该方法将两个列表进行合并
9、清空:
**.clear() 该方法可以把列表清空,返回None
10、复制:
①浅copy:
Ⅰ.**.copy() Ⅱ.列表名2=列表名1[:] Ⅲ.import copy 列表名2=copy.copy(列表名1) Ⅳ.列表名2=list(列表名1)
仅仅复制列表中第一层,若原列表中含有子列表,则复制的是子列表的地址
复制完成后,若改动第一层的元素,复制所得的列表不会变化;
但子列表若改变的话,复制所得列表中的子列表也会随之变化.反之,改动复制所得列表中的子列表,原列表中的子列表也会发生变化
注意:列表不能使用将一个列表赋值给另一个列表进行复制,这样会导致复制列表指向原列表的地址;
果原列表产生变化,则复制的列表也会发生变化。
浅copy可以用来创建联合账号。可分别对复制所得列表第一层更改,且改动其中一个列表中的子列表中的数据,另外一个列表也会发生变化
②深copy:
import copy 列表名2=copy.deepcopy(列表名1)
该方法可以完全复制列表,且不会因为原列表的变化而发生变化(子列表也不会发生变化)。
 #!-*- coding:utf-8 -*-
# Author:Steve
import copy names=['Steve','Jack','Jim','Stone','Person']
print(names,end='//')
print(names[1:4],end='//')#切片,顾头不顾尾,从头开始取,但不包括最后一个。
#print(names[1:])
print(names[3],end='//')#从左向右数为正,从零开始,从右开始为负,从-1开始
#print(names[-1])
print(names[-2:],end='//')
#print(names[2:])
print(names[0:3])#冒号左边没有数字时,表示从0开始;右边没有数字时,表示一直取到最后一个元素。
#print(names[:3])
print(names[0:-2:2])#最后的为步长,实现跳过输出。0,-1可以省略 #追加:**.append/插入:**.insert()/修改:**[]=''
names.append('')
names.insert(1,'Herry')
names[6]='Jordan'
print(names) #查询.index()/计数.count()
print(names.index('Steve'),end=" ")
print(names[names.index('Steve')],end=' ')
names.append('Steve')
print('列表中含有{}个Steve'.format(names.count('Steve')))
names.pop() #删除**.remove()/**.pop()/del **
names.remove('Steve')
del names[1]
names.pop()
names.pop(1)
print(names) #反转列表:**.reverse()/排序:**.sort()/扩展**.extend()
names.reverse()
print(names) names2=['','a','A','#']
names2.sort()
print(names2)
names.extend(names2)
print(names,names2) #清空
print(names.clear()) #复制:浅:**.copy()/import copy copy.copy(***) /列表名2=列表名1[:]/列表名2=list(列表名1)
#深: copy.deepcopy()
names=['Jim','Stone','Person',['q','w','e']]
names3=names.copy()
names4=copy.deepcopy(names)
print(names,'\n',names3,'\n',names4)
names[2]='A'
names[3][0]='Q'#names3[3][1]='W' 相同效果
print('\n',names,'\n',names3,'\n',names4)

list常用方法


list常用方法的更多相关文章

  1. 前端开发:Javascript中的数组,常用方法解析

    前端开发:Javascript中的数组,常用方法解析 前言 Array是Javascript构成的一个重要的部分,它可以用来存储字符串.对象.函数.Number,它是非常强大的.因此深入了解Array ...

  2. Jquery元素选取、常用方法

    一:常用的选择器:(李昌辉) 基本选择器 $("#myDiv") //匹配唯一的具有此id值的元素 $("div") //匹配指定名称的所有元素 $(" ...

  3. python浅谈正则的常用方法

    python浅谈正则的常用方法覆盖范围70%以上 上一次很多朋友写文字屏蔽说到要用正则表达,其实不是我不想用(我正则用得不是很多,看过我之前爬虫的都知道,我直接用BeautifulSoup的网页标签去 ...

  4. C# Webbrowser 常用方法及多线程调用

    设置控件的值 /// <summary> /// 根据ID,NAME双重判断并设置值 /// </summary> /// <param name="tagNa ...

  5. list,tuple,dict,set常用方法

    Python中list,tuple,dict,set常用方法 collections模块提供的其它有用扩展类型 from collections import Counter from collect ...

  6. 记录yii2-imagine几个常用方法

    记录yii2-imagine几个常用方法: //压缩 Image::thumbnail('@webroot/img/test-image.jpg', 120, 120)->save(Yii::g ...

  7. DOM常用方法总结

    DOM(Document Object Model:文档对象模型)为javascript中的一部分,它为访问和修改html文档或xml文档提供了一些编程接口,DOM以对象的形式来描述文档中的内容,以树 ...

  8. JSP内置对象及常用方法

    jsp九大内置对象及四个作用域: 何为作用域 先让我们看看效果: 大概流程是这样的,我们访问index.jsp的时候,分别对pageContext, request, session,applicat ...

  9. java中集合类中Collection接口中的Map接口的常用方法熟悉

    1:Map接口提供了将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值.Map接口中同样提供了集合的常用方法. 2:由于Map集合中的元素是通过key,value,进行存储的,要 ...

  10. 解析Exception和C#处理Exception的常用方法总结

    在.NET中,异常是指成员没有完成它的名称宣称可以完成的行动.在异常的机制中,异常和某件事情的发生频率无关. 异常处理四要素包括:一个表示异常详细信息的类类型:一个向调用者引发异常类实例的成员:调用者 ...

随机推荐

  1. 用phpstudy配置网站遇到的一些问题

    第一次是配置在我本机,总是连不上数据库,后来查看到mysql.ini配置文件里面端口号有一个不是3306,更改之后就好了. 第二次是配置在笔记本电脑上,安装的时候比较顺利,也就遇到80端口被占用还有缺 ...

  2. spark报错:warn util.utils::service 'sparkUI' can not bind on part 4040.Attempting port 4041.

    转载自:https://blog.csdn.net/weixin_41629917/article/details/83190258

  3. Eclipse在开发JavaEE时怎么显示隐藏的WebContent和build文件夹

    在使用eclipse是WebContent和build文件被隐藏起来时解决方法: 1.选择eclipse中的下三角选择Select Working Set: 2.将Java Main Sources选 ...

  4. Visual Studio 2017 密匙

    趁着这两天微软发布了Visual Studio 2017,安装体验了这个史上最强IDE最新版,分享一下自己的安装过程: VS2017下载地址,该版本堪称史上最大IDE,随便勾了几个选项,就要占用几十个 ...

  5. IO输入输出流

    在Java中进行文件的读写,Java IO流是必备的知识. IO流指 的是输入输出流,用来处理设备上的数据.这里的设备指硬盘,内存,键盘录入,网络传输等. 按处理数据类型来分:字节流和字符流. 按流的 ...

  6. cacti 流量图合并

    cacti 安装:https://www.cnblogs.com/weijie0717/p/4072711.html 一.需求介绍 由于交换机的多端口跑同一种流量,需要汇总统计.因此需要见多个端口的流 ...

  7. 独立安装CentOS7.4全记录

    大学用了四年的笔记本快用废了,闲来想着用来装个centos,当个服务器也行,于是装上了CentOS6.9系统,由于最小化安装,而且在安装时没有安装wpa_supplicant包,笔记本本身网卡接口又坏 ...

  8. CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录

    CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录: 0.Windows 10本机下载Xshell,以方便往Linux主机上上传大文件 1.CentOS7+CDH5.14.0安 ...

  9. nodejs前端接口与状态转换调试

    和UI无关的逻辑用browser 调有时不太方便,配置 node 命令行调试环境方法如下: cnpm install @babel/core @babel/cli @babel/register @b ...

  10. 百度地图缩小后marker点的图标移动

    遇到的坑:使用百度地图,当地图缩小时,marker点的自定义图标会出现偏移的问题,marker点的信息窗口会出现闪烁问题. 原因:1.anchor是定位点距离图片左上角的偏移量.如果不给anchor的 ...