基础数据类型之字典

1.字典的定义

使用{}定义字典,括号内用逗号分隔开多个key:value,其中value可以是任意类型,但是key必须是不可变类型且不能重复,是无序的!

info=[
    ['name','zhang'],
    ('age',19)
    ['gender','男']
]
d={} # 第一种方式定义
d=dict(x=1,y=2) #第二种,dict里面也可以穿一个info
dict(info)的工作原理等同于:
d={}
info=[
    ['name','zhang'],
    ('age',19)
    ['gender','男']
]

for x,y in info:
    d[x]=y

2.字典的作用

存放多个无序的数据,数据以键值对的方式存储

3.字典数据类型转换

见字典的定义

4.字典的内置方法

# 1.按key存取值,可存可取
q={'k1':111,'k2':222}
q['k1']=333 # key存在,则修改值,key不存在,则添加值

# 2.长度len
print(len(q)) # 统计字典的key或者value个数

# 3. in、not in运算
print('k1' in q) # 统计的是字典中的key在不在

# 4.删除
del q['k1']  # 通用删除方式,无返回值
q.pop('k1')  # 根据key删除,返回删除key对应的值
q.popitem()  # 随机删除,返回一个元组,该元组是删的key和value

# 5.for循环
for k in q.keys():  # 直接获取到字典的key
    print(k)

for v in q.values():  # 直接获取到字典的value
    print(v) 

for k,v in q.items():  #获取到对应的key和value
    print(k,v)

# 其他内置方法
q.clear()  # 清空字典
q.update({'k1':444,'k3':778}) # 更新q字典,如果老字典没有更新的key则添加,有则更新
q.get('k1') # key不存在不报错,返回none
q.setdefault('k1',233) # 如果key有则不添加;没有则添加。返回值是字典中key对应的值

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基础数据类型之字典 - Python技术站

(0)
上一篇 2023年4月2日 下午5:07
下一篇 2023年4月2日

相关文章

  • 轮播图前端

    轮播图组件 <template> <div id=”banner”> <el-carousel height=”400px”> <!– 将banner_list循环–> <el-carousel-item v-for=”item in banner_list” :key=”item”> <…

    2023年4月2日
    00
  • 计算机介绍和五大组成

    1. 什么是计算机 计算机俗称‘电脑’,通电的人脑。其实,计算机所有的组成部分,都是模仿人的某一个功能或者器官。 2. 为什么要有计算机 为了执行人类通过编程语言编写的文件程序,从而把人类解放出来。 3.计算机的组成部分 计算机有五大组成部分:控制器、运算器、存储器、输入设备、输出设备。 3.1 控制器 它是计算机的指挥系统,负责控制计算机其他的组件如何进行…

    2023年4月2日
    00
  • 小程序用户和登录页面展示

    用户页面wxml <!–pages/home/home.wxml–> <view class=”container”> <view class=”top-view”> <view class=”user”> <view class=”row”> <image class=”avatar” …

    Python开发 2023年4月2日
    00
  • django中视图函数的FBV和CBV

    1.什么是FBV和CBV FBV是指视图函数以普通函数的形式;CBV是指视图函数以类的方式。 2.普通FBV形式 def index(request): return HttpResponse(‘index’) 3.CBV形式 3.1 CBV形式的路由 path(r’^login/’,views.MyLogin.as_view()) 3.2 CBV形式的视图…

    Python开发 2023年4月2日
    00
  • 后台response和异常处理封装

    我们自己封装的一些东西,往往放在一个utils文件夹内,以后也方便管理和导入 后台response封装 # 自己封装的Response对象 from rest_framework.response import Response class APIResponse(Response): def __init__(self,code=1,msg=’成功’,re…

    2023年4月2日
    00
  • 函数的递归

    1.函数的递归的定义 函数的递归调用:是函数嵌套调用的一种特殊形式 具体是指:在调用一个函数的过程中又直接或者间接的调用到本身,是一个死循环,最大递归是1000次,超出之后报错。 2.函数递归的调用 # 直接调本身 def f1(): print(‘是我还是我’) f1() f1() # 间接调用 def f1(): print(‘f1’) f2() def…

    Python开发 2023年4月2日
    00
  • 源码分析之序列化器的many关键字

    在序列多个数据时,我们需要指定一个关键字many=True 这是为什么呢? 其实是,当序列化器产生对象时,传入参数many和不传入会生成两个不同的对象!! 这是怎么实现的呢?? 1.类的对象生成–先调用类的__new__方法生成一个空对象2.对象 = 类名(name=‘lz’)–会触发类的__init__方法,产生一个有属性的对象3.类的__new__方…

    2023年4月2日
    00
  • 操作系统启动流程和BIOS介绍

    1.BIOS介绍 我们刚刚买回来的电脑裸机是可以直接启动的,这是由于生产厂商在电脑出厂的时候就在电脑里编写了一个只可读的系统功能BIOS,该系统被写入了ROM(只读内存中) BIOS是一个过渡性的操作系统,当安装了window等其他操作系统时,该系统会被快速的代替 2.操作系统的启动流程 1.计算机通电2.BIOS开始运行,检测硬件:cpu、内存、硬盘等3.…

    2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部