列表(List) 的增删改查及其他方法 和元组(tuple)的查
一、列表
1、列表简介:
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}],列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。
1)下标取值:
li = ['刘松','liusong',123]
l1 = li[0]
print(l1) #单个取值
结果:['刘松'] li = ['刘松','liusong',123]
l1 = li[0:2]
print(l1) #切片取值
结果:['刘松', 'liusong']
2)增:
li = ['alex','wusir','egon','女神','taibai']
li.append('刘松')
print(li) #增加到最后
结果:['alex', 'wusir', 'egon', '女神', 'taibai', '刘松'] li = ['alex','wusir','egon','女神','taibai']
li.insert(4,'刘松')
print(li) #按照索引去增加
结果:['alex', 'wusir', 'egon', '女神', '刘松', 'taibai'] li = ['alex','wusir','egon','女神','taibai']
li.extend('刘松')
print(li) #分成逐个元素依次增加
结果:['alex', 'wusir', 'egon', '女神', 'taibai', '刘', '松']
3)删:
li = ['alex','wusir','egon','女神','taibai']
li.pop()
print(li) #默认删除最后一个,返回值
结果:['alex', 'wusir', 'egon', '女神'] li = ['alex','wusir','egon','女神','taibai']
li.remove('女神')
print(li) #按元素去删除
结果:['alex', 'wusir', 'egon', 'taibai'] li = ['alex','wusir','egon','女神','taibai']
li.clear()
print(li) #清空
结果:[] li = ['alex','wusir','egon','女神','taibai']
del li
print(li) #直接删除列表,会报错。
结果:报错。 li = ['alex','wusir','egon','女神','taibai']
del li[0:2]
print(li) #切片去删除
结果:['egon', '女神', 'taibai']
4)改:
li = ['alex','wusir','egon','女神','taibai']
li[0] ='刘松'
print(li) # 根据下标更改 li = ['alex','wusir','egon','女神','taibai']
li[0:3] = '刘松abcd'
print(li) #切片修改,按照最小元素修改
结果:['刘', '松', 'a', 'b', 'c', 'd', '女神', 'taibai']
5)查:
li = ['alex','wusir','egon','女神','taibai']
for i in li:
print(i) #循环查找
结果:alex
wusir
egon
女神
taibai li = ['alex','wusir','egon','女神','taibai']
name = li[0:4]
print(name) #切片查询
结果:['alex', 'wusir', 'egon', '女神']
6)公共方法:
li = ['alex','wusir','egon','女神','taibai']
l = len(li)
print(l) #查看列表里有多少个元素
结果:5 li = ['alex','wusir','egon','女神','taibai']
num = li.count('女神')
print(num) #查看元素在列表里出现的次数
结果:1 li = ['alex','wusir','egon','女神','taibai']
name = li.index('女神')
print(name) #查找元素在列表里的下标
结果:3 li = [1,5,4,7,6,2,3]
li.sort()
print(li) #正向排序,.sort(reverse=False)
结果:[1, 2, 3, 4, 5, 6, 7] li = [1,5,4,7,6,2,3]
li.reverse()
print(li) #反转排序
结果:[3, 2, 6, 7, 4, 5, 1]
7)嵌套
例:
li = ['taibai','武藤兰','苑昊',['alex','egon',89],23]
8)列表转字符串
s = 'alex'
s1 = 'sb'.join(s)
print(s1) #列表转化成字符串,以''里的元素拼接。
结果:asblsbesbx
二、元祖:
1、元祖简介:
元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")
1)###儿子不能改,孙子可能可以改###
tu = (1,2,3,'alex',[2,3,4,'taibai'],'egon')
print(tu[3]) #查找元祖下标3的元素
结果:alex print(tu[0:4]) #查找元祖下标0-4的元素
结果:(1, 2, 3, 'alex') for i in tu:
print(i) #循环元祖里的元素,只循环一次。
结果:1
2
3
alex
[2, 3, 4, 'taibai']
egon tu[4][3]=tu[4][3].upper()
print(tu) #把元祖里面的列表一个元素全部大写
结果:(1, 2, 3, 'alex', [2, 3, 4, 'TAIBAI'], 'egon') tu[4].append('sb')
print(tu) #在元祖里面的列表里增加元素
结果:(1, 2, 3, 'alex', [2, 3, 4, 'taibai', 'sb'], 'egon') range() #就是一个元祖
例子:for i in range(3,10):
print(i) #循环打印一次,3-9的数字。
for i in range(10):
print(i) #循环打印一次,0-9的数字。
for i in range(0,10,3):
print(i) #循环打印一次,0-9的数字,步长3,间接输出0-9所有的被3整除的数。
for i in range(10,0,-2):
print(i) #循环打印一次,10-1的数字,反向步长为2。
for i in range(10,-1,-2):
print(i) #循环打印一次,10-0的数字,反向步长为2。
列表(List) 的增删改查及其他方法 和元组(tuple)的查的更多相关文章
- 列表(索引切片 增删改查 嵌套) range 元组的初识
li = ["alex", "WuSir", "ritian", "barry", "wenzhou" ...
- Entity Framework增删改之通用精简方法
用EF用了好长一段时间了,从EF4.0的版本开始接触,感觉这个ORM不能说性能是最好的,但是我个人感觉功能实现以及和mvc的结合还是一个不错的企业级网站的解决方案,在此写个简易的通用扩展方法来方便大家 ...
- 总结day04 ---- 列表的切片,增删改查,以及,相关方法, 元祖的使用方法
内容大纲 1 : 列表的索引 : 列表的切片 2 : 列表的增加内容 >1:append(char) >2:insert(index,char) >3:extend('可迭代对象' ...
- 简单做了一个代办事项列表系统 ,增删改查。 前台页面用 jquery 后台用nodejs ,数据库用的是mongdoDB 。
引入npm 第三方mongoose包连接mongoDb本地数据库todolist const mongoose = require('mongoose'); mongoose.connect('mon ...
- Easyui数据表格-地区列表及工具栏增删改
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- 找呀志_使用SQLiteDatabase增删改提供的搜索方法和事务
知识具体解释:http://blog.csdn.net/zhaoyazhi2129/article/details/9026093 MainActivity.java,User.java,BaseDa ...
- Ado.net[登录,增删改查,Get传值,全选,不选,批量删除,批量更新]
[虽然说,开发的时候,我们可以使用各种框架,ado.net作为底层的东西,作为一个合格的程序员,在出问题的时候我们还是要知道如何调试] 一.增删改查 cmd.ExecuteReader();执行查询, ...
- 通过Java代码实现对数据库的数据进行操作:增删改查
在写代码之前,依然是引用mysql数据库的jar包文件:右键项目-构建路径-设置构建路径-库-添加外部JAR 在数据库中我们已经建立好一个表xs :分别有xuehao xingming xue ...
- jdbc增删改查进行封装
jdbc封装 1 dao (代码分层) com.aaa.dao 存放dao相关的类型 例如 StudentDAOImpl 处理 数据库的链接 存取数据 com.aaa.servlet 存放servle ...
随机推荐
- intellij安装lombok插件,解决注解@Slf4j注入后找不到变量log
1.进入设置 2.搜索插件 3.安装
- Sphinx学习笔记(一)
最近负责一个项目,需要用到全文检索,我的环境大体如下: 1.数据保存在MySQL中 2.需要支持中文检索 3.尽可能的简单 选择了Sphinx,至于solr和E ...
- 为什么在有的服务器上禅道、蝉知安装会报错? 之理解MySQL的SQL_MODE
最近用蝉知的CMS 建站比较多,感觉蛮顺手的,但在给客户安装的时候却会出现安装报错,其原因也很简单 查看了一下他们的install.sql文件中,有些时间字段的默认值是0000-00-00 00:00 ...
- [Maven] Missing artifact
今天从朋友那拷过来一个maven工程,eclipse中maven配置好了,maven仓库也配置完毕,但是一直报Missing artifact,然后开网执行maven update,下载完jar后,还 ...
- 502 VS 504
本文同时发表在https://github.com/zhangyachen/zhangyachen.github.io/issues/89 首先看一下概念: 502:作为网关或者代理工作的服务器尝试执 ...
- bzoj 4653: [Noi2016]区间
Description 在数轴上有 n个闭区间 [l1,r1],[l2,r2],...,[ln,rn].现在要从中选出 m 个区间,使得这 m个区间共同包含至少一个位置.换句话说,就是使得存在一个 x ...
- Effective Java 第三版——12. 始终重写 toString 方法
Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...
- FPGA 设计总结(1)
1. set_input_delay和set_output_delay的选项-max和-min的理解 首先 input/output其实是模拟数据在端口外的延时,是一个外部约束条件,目的是为了约束FP ...
- 对 Java 集合的巧妙利用
我们直接切入正题.首先大致介绍一下 Java 三大集合的一些特征: ①.ArrayList:底层采用数组结构,里面添加的元素有序可以重复. ②.HashSet:底层采用哈希表算法,里面添加的元素无序不 ...
- Android studio Error:org.gradle.api.internal.tasks.DefaultTaskInputs$TaskInputUnionFileCollection cannot be cast to
http://blog.csdn.net/FlyRabbit_1/article/details/74536317 Error:org.gradle.api.internal.tasks.Defaul ...
