Python之List列表的增删改查
序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python有6个序列的内置类型,但最常见的是列表和元组。
序列都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型,灵活度较高。
python的list是可变数据类型,它支持添加 append、插入 insert、修改、删除del等操作。
==============================================================================================================
一、列表的创建
1. 创建空列表:
list=[]
listName=list()
2. 可以把python中的list列表理解为任意对像的序列,只要把需要的参数值放入到中括号[ ]里面就可以了,就像下面这样操作:
names = ['ada','amy','ella','sandy']
列表可以包含不同类型对像,也支持嵌套(多维数组):
例:a = ['a',567,['adc',4,[12,'a']],(1,2)]
这个列表中就包含了字符串、整型、元组这些元素,同时还嵌套了一个列表。
二、添加新元素
1. list.append() 在list 末尾增加一个元素
例:name.append('4ds')
2. list.insert(100,'4ds') 在指定位置添加元素,如果指定的下标不存在,那么就是在末尾添加
3. list1.extend(list2) 合并两个list list2中仍有元素
例:list1=['a','b','c',0]
list2=[1,2,3,'d',6]
list1.extend(list2)
print(list1) ====>['a','b','c',0,1,2,3,'d',6]
三、修改更新
listName[7]='haha' #更新第8个元素的值为:haha
print('updated',listName) 四、查看列表长度
print('列表的长度是:',len(list1)) #返回列表中元素总个数 ===》9
五、查看列表中的值
1. 列表是有序的,可以通过python list下标来修改特定位置的值。
name = ['0test1','1yrd','2sdfh','3sdf']
print(name[2]) #查找下标为2的元素 ===》2sdfh
print(name[-1]) #索引取负数时,从最后一个元素开始查找 ===》3sdf
2. 遍历列表 (详情参见list循环、切片) 例1:
mylist = [1,2,3,4]
for i in mylist:
print(i)
等同于:
例2:
mylist = [1,2,3,4]
for i in range(len(mylist)):
print(mylist[i]) 每个元素都有一个地址
3. 查看某个元素在列表中出现的次数(个数)
print(list.count(‘xx’)) 查看某个元素在这个列表里的个数,如果该元素不存在,那么返回0
4. 查看某个元素的下标、索引值
print(list.index(‘xx’))找到这个元素的下标(索引),如果有多个,返回第一个,如果找一个不存在的元素会报错
六、删除列表中的元素及列表删除
1. list.pop() 删除最后一个元素,有返回值,返回被删除的元素
2. list.pop(n)指定下标,删除指定的元素,如果删除一个不存在的元素会报错
3. list.remove(xx) 删除list 里面的一个元素,有多个相同的元素,删除第一个 ;无返回值,显示None
4. del list[n] 删除指定下标对应的元素 ,n为负数时,从最后一个元素开始找起
5. del list 删除整个列表, list删除后无法访问
6. list.clear() 清空列表,返回一个空列表
7. 不要循环删除list元素,会导致结果错乱,如果要删除,先复制出来一个相同list
li = [1,1,2,3,4,5,6,7,7,8]
li2 = [1,1,2,3,4,5,6,7,7,8] #长度不变
for i in li2:
if i%2!=0:
li.remove(i)
print(li)
七、反转和排序
1. list.reverse() 将列表反转
list1=['abc','bcd','eds']
print(list1)
list1.reverse() #这种方式只能分开2步,不能print(list1.reverse())
print(list1) #输出
['abc', 'bcd', 'eds']
['eds', 'bcd', 'abc']
2. list.sort()排序,默认升序且只能对同数据类型的列表进行排序,否则报错
如:
mylist = ['b','wwds','a','912d','5wer']
mylist.sort()
print(mylist) ===》['5wer', '912d', 'a', 'b', 'wwds']
3. list.sort(reverse=True) 降序排列 ==>['wwds', 'b', 'a', '912d', '5wer']
注:list 中有字符串,数字时不能排序,排序针对同类型
八、布尔值,返回true或者false
print(1<2) ==》True 九、列表操作的函数
1、len(list):列表元素个数
2、max(list):返回列表元素最大值
3、min(list):返回列表元素最小值
4、list(seq):将元组转换为列表
5、enumerate 用法(打印元素对应的下标)
同时取下标,元素
结果如下:
十、列表脚本操作符
列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。
如下所示:
Python 表达式 | 结果 | 描述 |
---|---|---|
len([1, 2, 3]) | 3 | 长度 |
[1, 2, 3] + [4, 5, 6] | [1, 2, 3, 4, 5, 6] | 组合 |
['Hi!'] * 4 | ['Hi!', 'Hi!', 'Hi!', 'Hi!'] | 重复 |
3 in [1, 2, 3] | True | 元素是否存在于列表中 |
for x in [1, 2, 3]: print x, | 1 2 3 | 迭代 |
Python之List列表的增删改查的更多相关文章
- python 基础知识 列表的 增删改查 以及迭代取值
""" python 列表 通用方法 元组.数组.字典 取值方法 [] 列表中可以存储不同类型的数据 函数 封装了独立的功能可以直接调用 函数名(参数) 方法 和函数类似 ...
- Python学习笔记-列表的增删改查
- Python列表的增删改查排嵌套特殊输出格式
Python列表的增删改查排嵌套特殊输出格式 一.列表的样子: a = ['q' , 'w' , 'e ', 'r','t'] a为列表名,[ ]为列表内容,' '为列表内的元素,'q'为a[0] 二 ...
- python列表的增删改查和嵌套
列表 python常用的数据类型 可承载任意的数据类型 列表是有序的,可索引.切片(步长) 列表的创建 list1 = [1, 2, 'whll'] #1. list2 = list() #2. #3 ...
- Python(二)列表的增删改查
一,列表的增删改查 列表中增加元素: 1,从列表的末尾增加一个元素:append("") 2,从列表中插入一个元素:insert(下标位置,插入的元素) 合并列表: 1,name. ...
- 列表的初识,列表的索引切片,列表的增删改查,列表的嵌套,元组的初识,range
1 内容总览 列表的初识 列表的索引切片 列表的增删改查 列表的嵌套 元组的初识(了解) 元组的简单应用(了解) range 2 具体内容 列表的初识 why: str: 存储少量的数据.切片出来全都 ...
- python学习之-成员信息增删改查
python学习之-成员信息增删改查 主要实现了成员信息的增加,修改,查询,和删除功能,写着玩玩,在写的过程中,遇到的问题,旧新成员信息数据的合并,手机号和邮箱的验证,#!/usr/bin/env p ...
- day5 列表的增删改查
1,列表的增删改查,其他操作.2,元祖.3,列表的嵌套操作.4,开一点dict. 昨日内容回顾: 字符串的方法:1,find通过元素找索引,可切片,找不到返回-12,index,找不到报错.3,spl ...
- python manage.py shell 的增删改查
python manage.py shell 的增删改查 guoguo-MacBook-Pro:myblog guoguo$ python manage.py shell Python 3.5.1 ( ...
随机推荐
- 洛谷P4248 差异
题意:求所有后缀两两之间的最长公共前缀的长度之和. 解:这道题让我发现了一个奇妙的性质:所有后缀两两最长公共前缀长度之和 和 所有前缀两两最长公共后缀之和的值是相等的,但是每一组公共前/后缀是不同的. ...
- A1017. Queueing at Bank
Suppose a bank has K windows open for service. There is a yellow line in front of the windows which ...
- express框架学习笔记
用express框架也有一段时间了,下面我总结一下我做项目时迷惑的点: app.use()与app.get()的区别 app.use()是用来为应用程序绑定中间件的,当第一个参数是path是,第二个参 ...
- django跨域请求问题
一 同源策略 同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响.可以说Web是构建在同源策略基础之 ...
- template specifiers not specified in declaration of ‘template<class Key> class hash’
尝试写显示特化样例的时候,写了如下代码 #include <iostream> #include <cstddef> using namespace std; #define ...
- CSUST 1011 神秘群岛 (Dijkstra+LCA)
神秘群岛 Description 小J继续着周游世界的旅程,这次他来到了一个神奇的群岛.这片群岛有n个岛屿,同时这些岛屿被标上了1-n的编号. 每个岛屿上面都有神奇的传送门,传送门可以把小J从当前 ...
- (基础) 平方和与立方和 hdu2007
平方和与立方和 链接:http://acm.hdu.edu.cn/showproblem.php?pid=2007 Time Limit: 2000/1000 MS (Java/Others) ...
- Hibernate的入门(概念1):
什么是持久化类? 持久化类的编写规则? 区分自然主键和代理主键? 主键生成策略?
- wz
chcp 437 monkeyrunner wz.py wz.bat #coding=utf-8 from com.android.monkeyrunner import MonkeyDevice,M ...
- python kafka
转载:https://zhuanlan.zhihu.com/p/31731892 https://kafka-python.readthedocs.io/en/master/usage.html