字典操作

字典是由一对花括号括起来的一组“键值对”,每个键值对就是字典的一个元素,元素在字典中是无序的,常见操作如下:

info = {

'name':'xiaoming',

'sex':'nan',

'age':20,

'id':1,

}

print(info['id'])                    # 通过key取值

print(info['addr'])                # 通过key取值

print(info.get('id'))              # 通过key取值

print(info.get('addr'))          # 通过key取值

#用中括号取值和get方法取值的区别 ,get方法获取不到key的时候

#不会报错,中括号取值找不到key会报错,所以get方法更常用

#get方法还可以多传一个参数,如果get不到key的话,那么返回这个参数值。

#如果不写的话,默认get不到返回None

info['addr'] = 'Beijing'                             #给字典新增一个键值对

info.setdefault('phone',13811111)           #给字典新增一个键值对

info['id'] = 7

#在有这个key的情况下那就是修改这个key的value

#没有这个key的话,就是新增

#字典是无序的

del info['addr']          #删除字典的一个指定元素(键值对)

info.pop('addr')         #删除字典的一个指定元素(键值对),

#pop删除的时候必须得指定key,pop方法会返回删除的key对应的value

info.popitem()           #随机删除一个元素

info.clear()                #清空字典

 

例子:

all  = {

'car':

{

'color':['red','yellow','black'],

'moeny':1111111,

'pailiang':"2.5L",

'name':"BMW"

} ,

'car1':

{

'color':['red','yellow','black'],

'moeny':1111111,

'pailiang':"2.5L",

'country':"china"

},

'car2':

{

'color':['red','yellow','black'],

'moeny':1111111,

'pailiang':"2.5L"

}

}

print(all)

all.get('car').get('color')[1] = 'Orange'          # 把car的颜色改成Orange

print(all)

all['car']['color'][1]='Blue'                            # 把car的颜色改成Blue

print(all)

print(all.keys())         #获取该字典的所有key(最外层字典的,如果内又嵌套了字典则不管)

print(all.values())      #获取该字典所有的value

print(all.items())       #获取字典的key和value,循环的时候用

#直接循环字典循环的是字典的key,如果想循环的时候同时获取到key和value

#那么就要用.items()方法

#以上这一组方法不论取出字典的keys,values 还是结items返回的结果都是字典特定的类型你可以用打印tpye()方法来查看,不能用in判断某个字符串是否在这些返回结果里。

下面这种方法可以把一个字串转换成字典:

eval(字符串)

注意:被转换的字符串一定要符合字典的格式,比如 "{'iPhone':{'id':1,'price':5500},'iPad':{'id':2,'price':2000}}", 这样的字符串就可以用eval()方法转换成字典。

Python学习杂记_6_字典常用操作的更多相关文章

  1. Python学习杂记_5_列表常用操作

    列表操作 列表时用方括号括起来的一组元素值,是可变变量,可通过下表取值,也可以通过下表来修改值,列表中的元素是有序的,可以是不同的基本数据类型,如: names=[1, 2, 3, “abc”, “d ...

  2. python学习二,字符串常用操作

    字符串可以说是在日常开发中应用最广泛的了,现在来总结下有关python中有关字符串一些常用操作 首先我们声明一个字符串变量 str = "hello world" 下面我们来依次介 ...

  3. python学习day4--python基础--字典

    字典的常用操作: #字典天然去重,key唯一,如果key相同,只能打印出一个 id_db={ 220456789852963741:{ 'name':"alex", 'age':3 ...

  4. Python基础学习----字典常用操作

    字典的常见操作: # 字典: # 格式:{键值对,键值对} dict_demo={"name":"bai-boy","age":17} # ...

  5. Python学习-列表元组字典操作

    一.列表 列表是Python的基本数据类型之一,它是以 [] 括起来的,内部成员用逗号隔开.里面可以存放各种数据类型. # 例如: list2 = ['jason', 2, (1, 3), ['war ...

  6. Python学习之路3 - 字符串操作&字典

    本节内容: 常用的字符串处理. 格式化输出字符串. 字符串的替换. 字符串和二进制的相互转化. 字典的操作 字符串操作 常用的字符串处理 name = 'vector' print(name.capi ...

  7. [python]pythonic的字典常用操作

    注意:dct代表字典,key代表键值 1.判断字典中某个键是否存在 实现 dct.has_key(key) #False 更Pythonic方法 key in dct #False 2.获取字典中的值 ...

  8. Python学习之路13☞常用模块

    一 time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行“type(t ...

  9. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

随机推荐

  1. PHP如何严格控制session过期时间

    第一种回答 那么, 最常见的一种回答是: 设置Session的过期时间, 也就是session.gc_maxlifetime, 这种回答是不正确的, 原因如下: 1. 首先, 这个PHP是用一定的概率 ...

  2. 关于使用Java开发Mis系统

    如何使用Java开发一个小型的信息管理系统,首先我们应该知道要使用什么样的方法. 1.Java基础 2.JSP+Servlet+JavaBean JSP是服务器端的编程语言,见得比较多的是在一些网站上 ...

  3. Python之路--Python初识

    Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程 ...

  4. Codeforces Round #459 (Div. 2)-A. Eleven

    A. Eleven time limit per test1 second memory limit per test256 megabytes Problem Description Eleven ...

  5. 江西理工大学编程俱乐部 2328 Star

    : Star 时间限制: C/C++ s Java/Python s 内存限制: MB 答案正确: 提交: 题目描述 31世纪,人类世界的科技已经发展到了空前的高度,星际移民,星际旅游早已经不再是问题 ...

  6. poj 3292 H-素数问题 扩展艾氏筛选法

    题意:形似4n+1的被称作H-素数,两个H-素数相乘得到H-合成数.求h范围内的H-合成数个数 思路: h-素数                                            ...

  7. TCP/IP网络编程之多种I/O函数

    send和recv函数 在之前的学习中,我们在不少示例中用到send和recv这两个函数,但一直没有详细解释过着两个函数中每个参数的含义.本节将介绍Linux平台下的send&recv函数 # ...

  8. loj2046 「CQOI2016」路由表

    大傻逼trie树,更傻逼的是我这都没独立想出来,以后要少看题解,多多思考 #include <algorithm> #include <iostream> #include & ...

  9. Struts之上传

    上传的jsp写法: <tr> <td width="50%" align="left">软件上传: <input type=&qu ...

  10. 【转】behave行为树学习使用第一天

    最近在学习使用行为树做AI,决定把学到的贡献出来,抛砖引玉,希望可以认识到更多大牛 -- 首先我们了解下什么是行为树和为什么要使用行为树.   在我们项目中如果需要做一个AI敌人,比如做一个手游 某民 ...