day5 列表
列表 查 索引(下标),默认从0开始 切片 .count 查某个元素的出现次数 .index 根据内容找元素的对应索引位置 增加 .append() 追加在最后 .insert(index,'内容') 根据索引位置添加 .extend() 扩展一个列表 a.extemd(b) 会改变a的值,即a变成 a和b的合并,但是b不变 "+" a + b 也可以把两个队列合并在一起,倘若想知道a+b但是不想a,b改变。可以用c = a + b得到值而不改变a和b 修改 a[index] = '新的值' 单一赋值 a[start:end] = [a,b,c...] 多个赋值 删除 remove('内容') pop("index") 删除指定位置的内容,且可以赋值 del a , del a[index] 删除一个列表或者根据位置删除内容 .clear() 清空列表 排序 .sort() 用被排序的变量作为队形执行排序的函数,按照从小向大排序,字母按照从a到z的顺序,用大写先大后小 sorted() 将被排序的变量作为函数的执行参数,进行排序 severse() 反序排列 身份判断 type(a) is list 根据返回值判断正确与否
列表的切片
a=['wuchao','jinxin','xiaohu','sanpang','ligang'] #索引表示为a[0,1,2,3,4] 即wuchao这个值表示在a[]里面的0索引位置,以此类推 # 查 切片 print(a[1:3]) # 顾头不顾尾,包括左边不包括右边 print(a[1:]) # 取到最后一个值 print(a[1:-1]) # 取到最后一个值,但是不包括最后一个 print(a[1:-1:1]) # 从左到右一个一个取出来,最后的“1”表示步长 print(a[1:-1:2]) # 从左到右隔一个取,“2”表示从左往右两个为间隔的取,即隔一个取 print(a[3::-2]) # 从右往左走,如果是反方向那第一个就要是最后一个,然后从最后往前取,-2表示从右往左隔一个取
添加 append insert
a=['wuchao','jinxin','xiaohu','sanpang','ligang'] a.append('xuepeng') print(a) # 添加一个元素进入a队列中的最后添加,默认添加在最后一个位置 a.insert(1,'xuepeng') print(a) # #在索引1的位置插入,insert可以将数据插入到任意位置
修改
# 修改 不涉及方法,只需要进行赋值操作 a[1] = 'haidilao' print(a) # 知道索引位置的话,就可以直接拿出来进行赋值操作替换原数据 a[1:3] = ['a','b'] print(a) # 对多位置进行修改,即多取值然后赋值替换
删除 remove pop del
a.remove('wuchao') print(a) # remove直接跟的是删除内容而不是下标,若想根据索引删除需要借助其他命令 # 当然可以 a.remove(a[0]) 这样删除a的索引的第0索引位置的内容,但是比较麻烦 # remove的删除只能是个整体,不能对多个内容进行切片删除 b=a.pop(1) print(a) print(b) # pop可以多做一个操作,即:将取出的内容保存,还可以在对其他的对象赋值 # 若果pop不进行赋值的话,和remove用法类似,只是多了个赋值而已 # 默认删除最后一个如果不指定位置的话 del a[0] print(a) # del 的删除与列表关系不大,并不是专属列表的操作,可以删除一切, # 不仅仅是a内的元素甚至是a本身都可以删除
其他操作
# count 出现频率 t = ['to','to','to','or'].count('to') print(t) # #对列表内的指定元素进行次数计算
#extend 添加数组 a = [1,2,3] b = [4,5,6] a.extend(b) print(a) print(b) # #对多个数组进行叠加,只改变被添加的数组,添加的数组无改变
# index 根据元素内容查找在列表中的索引位置 a=['wuchao','jinxin','ligang','xiaohu ','sanpang','ligang','ligang'] print(a.index('wuchao')) # 在知道元素内容的时候,想要得到此内容的地址索引 # 如果列表总有相同的元素,即想取的元素多个重复,index只能取第一个的位置 # 如果想要取多个,可以一个一个取,index不支持此操作,因此需要切片
# sort 按照从小到大排序,如果是字符串的话就是按照26字母顺序排序,如果有大小写,先大后小 b = [3,5,4,9,8,2,1] b.sort() print(b) #没有返回值,是不能进行赋值操作的,如果是a = b.sort() 返回的是 none
# 查找某个元素在不在列表时,可以 .count 查询次数,为0表示不在,或者直接 in 根据返回值查看 a=['wuchao','jinxin','ligang','xiaohu ','sanpang','ligang','ligang'] print(a.count('ssssss')) print('sssss' in a )
查找队列中第几个的相同元素的示例方法
有点麻烦仅提供思路来看
# 详细的取第二个李刚的位置索引,相当的麻烦,如果要取第三第四,就用循环吧 # 这种情况很少。也有其他的方法,比如找出一个删掉再找一个一个再删掉之类的。。 first_lg_index = a.index('ligang') #首先取出来第一个李刚的位置 little_a = a[first_lg_index + 1:] #基于第一个李刚的位置进行切片。而且不包括第一个李刚,即‘+1’位置后的元素进行切片创建一个小列表 print('first_lg_index:',first_lg_index) #打印出第一个李刚的索引位置用作后续计算。 second_lg_index = little_a.index('ligang') #将第二个李刚的位置找出来并赋值给一个变量 print('second_lg_index',second_lg_index) #打印出第二个李刚的索引位置用作后续计算 second_lg_in_big_index = first_lg_index + second_lg_index + 1 #第一个李刚的位置加第二个李刚的位置,因为前面切片时省略了第一个李刚的位置,因此需要‘+1’补充回来 print('second_lg_in_big_index:',second_lg_in_big_index) #打印出来计算结果 print('second lg:',a[second_lg_in_big_index]) #打印出查询词
day5 列表的更多相关文章
- Python之旅Day5 列表生成式 生成器 迭代器 装饰器
装饰器 器即函数,装饰即修饰,意指为其他函数添加新功能 装饰器定义:本质就是函数,功能是为其他函数添加新功能 装饰器涉及的知识点= 高阶函数+函数嵌套+闭包 在遵循下面两个原则的前提下为被装饰者新功能 ...
- day5 列表的增删改查
1,列表的增删改查,其他操作.2,元祖.3,列表的嵌套操作.4,开一点dict. 昨日内容回顾: 字符串的方法:1,find通过元素找索引,可切片,找不到返回-12,index,找不到报错.3,spl ...
- 【学习笔记】--- 老男孩学Python,day5 列表 元祖
今日主要内容1. list(增删改查) 列表可以装大量的数据. 不限制数据类型. 表示方式:[] 方括号中的每一项用逗号隔开 列表和字符串一样.也有索引和切片 常用的功能: 1. 增: append( ...
- day 69-70 一对一 一对多 多对一联表查询
day 69 orm操作之表关系,多对多,多对一 多对一/一对多, 多对多{类中的定义方法} day69 1. 昨日内容回顾 1. 单表增删改查 2. 单表查询API 返回QuerySet对象的: 1 ...
- day5(字符编码、数据类型、列表基本操作)
一.字符编码 计算器所认识的编码都是二进制编码 二进制与十进制转换 计算机最开始使用的编码是美国的 ASCll编码 计算机容量单位 字符编码 python2.x 默认编码使用的是ASCll pytho ...
- day5.python列表练习题
写代码,有如下列表,按照要求实现每一个功能 li = [“alex”, “WuSir”, “ritian”, “barry”, “wenzhou”] 1.计算列表的长度并输出 print(len(li ...
- day5 五、数字类型、字符串,列表类型的基本操作和内置方法
一.可变与不可变 可变:值改变,但是id不变,证明就是在改变原值,是可变类型.它的原理是在内存里有一个值,然后这个值发生了改变,意为id地址是同一个,没有变化 # l=['a','b'] # prin ...
- day5作业(基本数据类型字符串,列表)
#coding:utf-8'''默写99乘法标 金字塔 必做: 1.昨日选做题 博客中有 http://www.cnblogs.com/linhaifeng/articles/7133357.html ...
- day5笔记 列表 list 增删改查
列表的使用 一.索引和切片 # 索引和切片,用法与字符串一样 l = [1,2,3,'af','re',4,'45'] print(l[0]) print(l[3]) print(l[-1]) # ' ...
随机推荐
- android 权限动态申请
名字其实有点让人感觉高大上"权限动态申请",其实也没有什么, 以前做Android程序的时候,比如需要打开摄像头 那么需要在 然后就可以了, 但是Android6.0之后呢,有些权 ...
- python制作电脑定时关机办公神器,另含其它两种方式,无需编程!
小编本人目前就是在电脑面前工作,常常会工作到凌晨两三点还在为自己的梦想奋斗着.有时在办公椅上就稀里糊涂睡着了,我相信有很多朋友和我一样,这样是很不好的.第一对身体不好,第二对电脑不好. 对身体 ...
- Auto-ML之自动化特征工程
1. 引言 个人以为,机器学习是朝着更高的易用性.更低的技术门槛.更敏捷的开发成本的方向去发展,且Auto-ML或者Auto-DL的发展无疑是最好的证明.因此花费一些时间学习了解了Auto-ML领域的 ...
- 历时25天,我的博客(www.ityouknow.com)终于又活了过来
时间回到2016年的7月10号,那时候我刚刚开始正式在博客园写博客,博客园的交流氛围很好,但鉴于博客园古老的界面,同时计划创建一个自己独立的博客,毕竟自己的博客怎么折腾都行. 那时候正在研究 Spri ...
- Ceph分布式存储集群-硬件选择
在规划Ceph分布式存储集群环境的时候,对硬件的选择很重要,这关乎整个Ceph集群的性能,下面梳理到一些硬件的选择标准,可供参考: 1)CPU选择Ceph metadata server会动态的重新分 ...
- Redis+TwemProxy(nutcracker)集群方案部署记录
Twemproxy 又称nutcracker ,是一个memcache.Redis协议的轻量级代理,一个用于sharding 的中间件.有了Twemproxy,客户端不直接访问Redis服务器,而是通 ...
- 解决error while loading shared libraries: libXXX.so.X: cannot open shared object file: No such file
原文地址:http://blog.csdn.net/yjk13703623757/article/details/53217377 一.问题 运行hydra时,提示错误: hydra : error ...
- 如何在java项目中使用lucene
lucene是一个开源的全文检索引擎工具包,但它不是一个成型的搜索引擎,它的功能就是负责将文本数据按照某种分词算法进行分词,分词后的结果存储在索引库中,然后根据关键字从索引库检检索. 那么应该如何使用 ...
- beta版说明书
项目名称:GoGoing 软件使用说明: 在主界面是可以点击选择景点门票区间来选择景点,同时也可搜索景点显示信息. 还可以通过定位功能显示附近景点. 点开门票区间后是一些景点的图片和简介,还可以通过距 ...
- vue props 用法(转载)
前面的话 组件接受的选项大部分与Vue实例一样,而选项props是组件中非常重要的一个选项.在 Vue 中,父子组件的关系可以总结为 props down, events up.父组件通过 props ...