列表、元组、字典的增删改查常用操作

1.列表

 1 string = ‘list‘
 2
 3 #字符串 -》 列表
 4 list1 = list(string) #     [‘l‘, ‘i‘, ‘s‘, ‘t‘]
 5
 6 #列表 - 》字符串
 7 string1 = ‘‘.join(list1) # list
 8
 9 #增加
10 list1 = list(‘I have a pen‘)
11 list1.append(‘!‘)#末尾增加一个元素[‘I‘, ‘ ‘, ‘h‘, ‘a‘, ‘v‘, ‘e‘, ‘ ‘, ‘a‘, ‘ ‘, ‘p‘, ‘e‘, ‘n‘, ‘!‘]
12 list1.insert(2,‘this is a chuanqi ‘)
13 #[‘I‘, ‘ ‘, ‘chuanqi‘, ‘h‘, ‘a‘, ‘v‘, ‘e‘, ‘ ‘, ‘a‘, ‘ ‘, ‘p‘, ‘e‘, ‘n‘, ‘!‘]
14
15 #删除
16 list1.pop(-1) #删除指定索引的元素,不填的话默认删除的元素,并return被删除的元素
17 del list1[-1]
18 list1.remove(‘n‘)
19 #删除指定的元素,如果不存在,则会报错,没有返回值
20
21 #修改
22 list_new = [1,2,3,4,5]
23 list_new[0] = 8 # 元素赋值
24 list_new[0:2] = list(‘05‘) #分片赋值, [‘0‘, ‘5‘, 3, 4, 5]
25 list_new[1:1] = list(‘1234‘)#分片赋值,插入元素
26 #[1, ‘1‘, ‘2‘, ‘3‘, ‘4‘, 2, 3, 4, 5]
27 list_new[1:3] = list[] #分片赋值 ,删除元素
28 #[1, 4, 5]
29
30 #查找
31 list_new = [1,2,3,4,5]
32 if 1 in list_new:
33     index = list_new.index(1)
34 print(index)  # 查找元素下标
35 #0
36
37 #拼接
38 list_new = [1,2,3,4,5]
39 list_n = [8,9,10]
40 list_new.extend(list_n)
41 print(list_new)# 向列表中添加元素
42 #[1, 2, 3, 4, 5, 8, 9, 10]
43
44 #逆置
45 list_new = [1,2,3,4,5]
46 list_new.reverse()
47 print(list_new) #list_new = [1,2,3,4,5]
48
49 #去重
50
51 #1
52 l1 = [‘b‘,‘c‘,‘d‘,‘c‘,‘a‘,‘a‘]
53 l2 = list(set(l1))
54 #2
55 l2.sort(key=l1.index) #保持原来的顺序
56 #3
57 l1 = [‘b‘,‘c‘,‘d‘,‘c‘,‘a‘,‘a‘]
58 l2 = []
59 for i in l1:  #[l2.append(i) for i in l1 if not i in l2]
60     if not i in l2:
61         l2.append(i)
62 print l2   #保持原来的顺序  

2.元组

1  #操作和列表相似,但元组不能修改
2  tuple1 = tuple([1,2,3,4])
3  #将列表转换为元组 

3.字典

 1 #创建
 2 dict1 = {
 3     ‘key‘:‘value‘,
 4     ‘key1‘:‘value1‘
 5 }
 6 a = [(‘key1‘,‘value1‘),(‘key2‘,‘value2‘)]
 7 dict1 = dict(a)
 8 dict1 = {}.fromkeys([‘key1‘,‘key2‘],‘default_value‘) #从键值创建dict
 9 dict1 = dict(key1=‘value1‘,key2=‘value2‘)
10
11 #增加
12 dict1[‘key3‘]=‘value3‘ #字典可以自动添加
13 dict1.setdefault(‘key5‘,‘N/A‘) #如果不存在,就设置默认值
14 dic = {‘name‘:‘egon‘,‘age‘:18,‘salary‘:50000,‘hobbies‘:‘happy‘,‘height‘:180}
15 dic.setdefault(‘height‘,185)
16 print(dic)
17 #{‘name‘: ‘egon‘, ‘age‘: 18, ‘salary‘: 50000, ‘hobbies‘: ‘happy‘, ‘height‘: 180}
18
19 #删除
20 del dict1[‘key3‘]
21 print dict1.pop(‘key2‘)  #popitem随机删除 和列表的pop一样
22 #dict1.clear()  #深删除,即使有拷贝 也会被删除
23
24 #修改
25 if ‘key1‘ in dict1:
26     dict1[‘key1‘]=‘new_value_1‘
27
28 #查找
29 if ‘key1‘ in dict1:
30     print dict1[‘key1‘]
31 if dict1.has_key(‘key1‘):
32     print dict1[‘key1‘]
33 print dict1.get(‘key3‘,‘not exists‘) #宽松访问
34 print dict1.keys(),dict1.values()
35
36 #拼接
37 dict2 = dict(key4 = ‘value4‘) #从字典更新另一个字典
38 dict1.update(dict2)
39  
时间: 2024-10-13 09:28:09

列表、元组、字典的增删改查常用操作的相关文章

列表、字典的增删改查

一.列表: # 列表的作用:存多个值,可以修改 # hobby = ['play','eat','sleep'] # # 列表的具体操作 # 查看: # hobby = ['play','eat','sleep',['egon','ysb']] # f = hobby[2] # 查看hobbyt列表内第二个元素 # print(f) # # 增加(1): # hobby = ['play','eat','sleep',['egon','ysb']] # hobby.append(元素) # f

字典 字典的增删改查

1)什么是字典(dict)dict. 以{}表示. 每一项用逗号隔开,内部元素用key:value的形式来保存数据{"jj":"林俊杰", "jay":"周杰伦"} 查询的效率非常高, 通过key来查找元素 内部使用key来计算一个内存地址(暂时),hash算法. key必须是不可变的数据类型(key 必须是可哈希的数据类型) 可哈希就是不可变 2)字典的增删改查 新增: dict["新key"] = &q

python 字典的增删改查

字典 # 1.存储数据比较大 # 2.字典的查找速度比列表快 # 3.字典都是通过键来操作的,且键必须是唯一的. # 4.# dic = {"键":"值","key":"value"} 字典的增删改查 字典增: dic = {} dic["键"]= 值 添加键值对 dic = {} dic.setdefault("键",值) 有则更改,无则添加 字典删: dic = {"111

Android学习--------实现增删改查数据库操作以及实现类似微信好友对话管理操作

最近的一个实验用到东西挺多,特地总结一下. 要求功能: 1.第一个页面添加歌曲名和歌手,跳到第二个页面列表显示所有记录,使用sqlite数据库 2.对于第二个页面显示的信息可以进行删除和修改操作,并自动刷新 最后我做的效果: 长按列表项弹出单个管理的菜单,像微信好友对话管理一样. 删除时可以直接删除这一条并在列表中直接显示,更新时弹出对话框更新内容提交后在列表中重新显示. 做此例遇到的困难: 1.菜单获取上下文 2.获取对话框中的内容 3.对话框按钮添加监听事件-----注意包不要导错:impo

使用DOM进行xml文档的crud(增删改查)操作<操作详解>

很多朋友对DOM有感冒,这里我花了一些时间写了一个小小的教程,这个能看懂,会操作了,我相信基于DOM的其它API(如JDOM,DOM4J等)一般不会有什么问题. 后附java代码,也可以下载(可点击这里入下载)导入到Eclipse或MyEclipse. Node和Element的关系 Element是Node的子接口,所以Element的方法要比Node方法要多,这样的话使用起来比较方便,一般情况我们都把节点转换成元素(或者叫标签,即Element); Element是Node的子类型: 比如我

使用DOM进行xml文档的crud(增删改查)操作<操作详解>

很多朋友对DOM有感冒,这里我花了一些时间写了一个小小的教程,这个能看懂,会操作了,我相信基于DOM的其它API(如JDOM,DOM4J等)一般不会有什么问题. 后附java代码,也可以下载(可点击这里入下载)导入到Eclipse或MyEclipse. Node和Element的关系 Element是Node的子接口,所以Element的方法要比Node方法要多,这样的话使用起来比较方便,一般情况我们都把节点转换成元素(或者叫标签,即Element); Element是Node的子类型: 比如我

字典相关函数(增删改查)

# ###字典的相关函数 (增删改查) # (1) 增 dictvar = {} dictvar['top'] = "凯" dictvar['middle'] = "妲己" dictvar["bottom"] = "鲁班七号" dictvar["jungle"] = "刘备" dictvar["support"] = "刘邦" print(dict

[Android] SQLite数据库之增删改查基础操作

    在编程中常常会遇到数据库的操作,而Android系统内置了SQLite,它是一款轻型数据库,遵守事务ACID的关系型数据库管理系统,它占用的资源非常低,可以支持Windows/Linux/Unix等主流操作系统,同一时候可以跟非常多程序语言如C#.PHP.Java等相结合.以下先回想SQL的基本语句,再讲述Android的基本操作. 一. adb shell回想SQL语句     首先,我感觉自己整个大学印象最深的几门课就包含<数据库>,所以想先回想SQL增删改查的基本语句.而在And

android139 360 黑名单 增删改查-数据库操作

BlackNumberOpenHelper.java package com.itheima52.mobilesafe.db.dao; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; public class BlackNumberOpenHelper extends SQLiteOpenH