python 中字典的操作(增、删、改、查)

字典是另一种可变容器模型,且可存储任意类型对象,下标从0开始,最后一个为-1。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:

d = {key1 : value1, key2 : value2 }

键必须是唯一的,但值则不必,字典是无序的。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

一个简单的字典实例:

dict = {‘aaa‘: ‘23‘, ‘bb‘: ‘882‘, ‘ccc‘: ‘2358‘}

也可如此创建字典:

dict1 = { ‘ddd‘: 1234 };
dict2 = { ‘ddd‘: 1235, 98.6: 37 };

1. 增加

d[‘height‘] = 170
d.setdefault(‘age‘,‘21‘) #显示d这个字典的‘age‘值的内容,因为字典有,所以不会去设置它
 1 #字典: key-value, 取值方便,速度快,key不能重复
 2 d = {‘name‘:‘nancy‘,
 3      ‘age‘:‘20‘,
 4      ‘sex‘:‘female‘,
 5      ‘addr‘: ‘nb‘
 6      }
 7 #增加
 8 d[‘height‘] = 170
 9 print(d) # -> {‘sex‘: ‘female‘, ‘age‘: ‘20‘, ‘name‘: ‘nancy‘, ‘height‘: 170, ‘addr‘: ‘nb‘}
10 #字典是无序的
11 value = d.setdefault(‘age‘,‘21‘) #显示d这个字典的‘age‘值的内容,因为字典有,所以不会去设置它
12 print(value) # 20
13 value1 = d.setdefault(‘weight‘,98) ##显示d这个字典的‘weight‘值的内容,因为字典没有,所以设置为98了
14 print(value1) #-> 98
15 print(d) # -> {‘height‘: 170, ‘name‘: ‘nancy‘, ‘age‘: ‘20‘, ‘addr‘: ‘nb‘, ‘sex‘: ‘female‘, ‘weight‘: 98}

2. 删除

d.pop(‘height‘)#删除某个key,这个比较常用
d.popitem() # 随机删除一个
del d[‘name‘]#删除某个key
d.clear()#清空字典
 1 #字典: key-value, 取值方便,速度快,key不能重复
 2 d = {‘name‘:‘nancy‘,
 3      ‘age‘:‘20‘,
 4      ‘sex‘:‘female‘,
 5      ‘addr‘: ‘China‘,
 6      ‘height‘: ‘180‘
 7      }
 8 #删除
 9 d.pop(‘height‘)#删除某个key,这个比较常用
10 print(d) # -> {‘sex‘: ‘female‘, ‘age‘: ‘20‘, ‘name‘: ‘nancy‘, ‘addr‘: ‘China‘}
11 d.popitem() # 随机删除一个
12 print(d) #-> {‘age‘: ‘20‘, ‘name‘: ‘nancy‘, ‘addr‘: ‘China‘}
13 del d[‘name‘]#删除某个key
14 print(d) # -> {‘sex‘: ‘female‘, ‘addr‘: ‘China‘}
15 d.clear()#清空字典
16 print(d) # -> {}

3. 修改

d[‘height‘] = 170 #如果key 存在的话,修改它的值,如果不存在的话新增
 1 #字典: key-value, 取值方便,速度快,key不能重复
 2 d = {‘name‘:‘nancy‘,
 3      ‘age‘:‘20‘,
 4      ‘sex‘:‘female‘,
 5      ‘addr‘: ‘China‘,
 6      ‘height‘: ‘180‘
 7      }
 8 #修改
 9 d[‘height‘] = 170 #如果key 存在的话,修改它的值,如果不存在的话新增
10 print(d) # -> {‘addr‘: ‘China‘, ‘name‘: ‘nancy‘, ‘height‘: 170, ‘age‘: ‘20‘, ‘sex‘: ‘female‘}

4. 查看

通过方括号[]取值查看

 1 #字典: key-value, 取值方便,速度快,key不能重复
 2 d = {‘name‘:‘nancy‘,
 3      ‘age‘:‘20‘,
 4      ‘sex‘:‘female‘,
 5      ‘addr‘: ‘China‘,
 6      ‘height‘: ‘180‘
 7      }
 8 #查看
 9 print(d[‘name‘])#如果写了不存在的key,会报错 -> nancy
10 print(d[‘age‘]) # -> 20
11 print(d.get(‘addr‘)) # -> China
12 print(d.get(‘addr1‘))#如果get()不到的话,返回None -> None
13 print(d.get(‘addr2‘,‘找不到‘)) # -> 找不到
14 print(d.keys())#取得所有的key  -> dict_keys([‘age‘, ‘addr‘, ‘height‘, ‘name‘, ‘sex‘])
15 print(d.values())#获得所有的value -> dict_values([‘20‘, ‘China‘, ‘180‘, ‘nancy‘, ‘female‘])
16 #d.has_key(‘addr‘)#python2 里面有这个方法,python3里没有
17 if ‘addr‘ in d: #判断key 是否在这个字典里
18     print(‘addr‘) # -> addr
19 #if ‘addr‘ in d.keys():
 1 for k in d: #取到key
 2     print(k) # 打印所有的key值
 3
 4 print(d.items())#是把字典的key,value 转成一个二维数组(实际上不是真的二维数组,要使用需强制转换),性能不好
 5 # -> dict_items([(‘height‘, ‘180‘), (‘sex‘, ‘female‘), (‘addr‘, ‘China‘), (‘age‘, ‘20‘), (‘name‘, ‘nancy‘)])
 6 res = list(d.items())
 7 print(res[0]) # ->(‘height‘,‘180‘)
 8
 9 for k,v in d.items():#可以同时把key 和value 取出来
10     print(k,v)
11 #height 180
12 #sex female
13 #addr China
14 #age 20
15 #name nancy
16
17 for k in d:#性能好,保留了字典原有的特性
18     print(k,d.get(k))
19 # height 180
20 # sex female
21 # addr China
22 # age 20
23 # name nancy

原文地址:https://www.cnblogs.com/nancyzhu/p/8127288.html

时间: 2024-11-10 13:50:25

python 中字典的操作(增、删、改、查)的相关文章

Python---MySQL数据库之四大操作(增 删 改 查)

一.对数据库,表,记录---四大操作(增 删 改 查) 1.操作数据库 (1)对数据库(文件夹):进行增加操作 Create  database  库名; 例:  Create  database  db7 ; 查询库: show  databases; 结果: +-----------------------------+ | Database                   | +----------------------------+ | information_schema | |

ADO.NET 增 删 改 查

ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访问技术的基础 连接数据库基本格式:需要两个类1.数据库连接类 SqlConnection2.数据库操作类 SqlCommand 1.连接数据库写连接字符串,立马就要想到有4点要写完,1.连接哪台服务器,2.连接哪个数据库,3.连接用户名,4.密码string sql = "server=.(服务器i

怎样从C#中打开数据库并进行 增 删 改 查 操作

首先 在C#中引用数据库的操作! (因为我们用的是SQLserver数据库,所以是SqlClient) using System.Data.SqlClient; 1:要实现对数据库的操作,我们必须先登录数据库 Console.WriteLine("请输入用户名:"); //提示客户输入用户名和密码 string name = Console.ReadLine(); Console.WriteLine("请输入密码:"); string pwd = Console.R

Android 增,删,改,查 通讯录中的联系人

一.权限 操作通讯录必须在AndroidManifest.xml中先添加2个权限, <uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission> <uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>

数据操作:增 删 改 查

1.创建数据库create database 库名gouse 库名go 2.创建表 create table 表名 ( 列名 类型, 列名 类型, 列名 类型 ) 例子: create table one( daihao varchar(10), shuming varchar(50), zuozhe varchar(10), chubanshe varchar(50), shijian datetime) 3.添加行记录 insert into 表名(列名,列名,列名) values('值',

Python中字典的操作

1.字典key-value,key是不能重复的stu_info={"name":"王志华","age":18,"addr":"北京"}2.取值,查print(stu_info['name'])print(stu_info['age'])print(stu_info['addr'])# print(stu_info['we']) #取不存在的key的值,会报key不存在的错误#.get方法取值print(st

数据库的增,删,改,查的操作示例

public class Test extends AndroidTestCase { private shujuku shu; private SQLiteDatabase db; // 测试方法执行前调用 @Override protected void setUp() throws Exception { // TODO Auto-generated method stub   super.setUp(); shu = new shujuku(getContext()); // 拿到数据库

Java操作MongoDB:连接&amp;增&amp;删&amp;改&amp;查

1.连接 ①方式一 MongoClientOptions.Builder builder = MongoClientOptions.builder(); //可以通过builder做各种详细配置 MongoClientOptions myOptions = builder.build(); ArrayList<ServerAddress> serverAddressList = new ArrayList(); ServerAddress record = new ServerAddress(

JavaScriptDOM操作那些事(增 删 改 查)

1.寻找节点 //寻找节点 id方法 document.getElementById(); //标准 //寻找节点层次方法 parentNode().firstChild()和lastChild(): -查找兄弟一个节点 previousSibling -查找后一个节点 nextSibling //根据签名查找节点 document.getElementsByTagName();返回数组 //根据name查找节点 getElementsByName(): 2.创建一个新节点 //elementN