Python:基础数据类型--字典

基础数据类型--字典

Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。

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

键必须是唯一的,但值则不必。

d = {key1 : value1, key2 : value2 }

字典:增

dic = {‘name‘: ‘老男孩‘,‘age‘: 10000, ‘sex‘: ‘男‘}
dic[‘hobby‘] = ‘old_girl‘                  # 有key则修改,无则增加
dic[‘name‘] = ‘alex‘
print(dic)

{‘name‘: ‘alex‘, ‘age‘: 10000, ‘sex‘: ‘男‘, ‘hobby‘: ‘old_girl‘}

setdefault()  有则不修改,无则增加。

dic = {‘name‘: ‘老男孩‘,‘age‘: 10000,‘sex‘: ‘男‘}
dic.setdefault(‘sex‘,‘女‘)                 # 有key则不修改,无则增加print(dic)

{‘name‘: ‘老男孩‘, ‘age‘: 10000, ‘sex‘: ‘男‘}

字典:删

pop()  按照key删除元素,并返回删除的元素。

dic = {‘name‘: ‘老男孩‘,‘age‘: 10000,‘sex‘: ‘男‘}
print(dic.pop(‘name‘))            # 删除key为name的元素,并将其返回。

dic.pop(‘name1‘,None)                      # 删除没有的key,未避免报错,可以设置默认返回值。
print(dic)

老男孩
{‘age‘: 10000, ‘sex‘: ‘男‘}

popitem()   在python3.6之前为随机删除字典中的一个元素,python3.6则是删除字典中最后一个元素。

dic = {‘name‘: ‘老男孩‘,‘age‘: 10000,‘sex‘: ‘男‘}
print(dic.popitem())
print(dic)

(‘sex‘, ‘男‘)
{‘name‘: ‘老男孩‘, ‘age‘: 10000}

clear()  清空字典。

dic = {‘name‘: ‘老男孩‘,‘age‘: 10000,‘sex‘: ‘男‘}
dic.clear()
print(dic)

{}

del  1,删除整个字典。2,按照键去删除键值对。

dic = {‘name‘: ‘老男孩‘,‘age‘: 10000,‘sex‘: ‘男‘}
del dic[‘name‘]
print(dic)
del dic                  # 删除整个字典
print(dic)

{‘age‘: 10000, ‘sex‘: ‘男‘}
NameError: name ‘dic‘ is not defined

字典:改

dic = {‘name‘: ‘老男孩‘,‘age‘: 10000,‘sex‘: ‘男‘}
dic[‘name‘] = ‘alex‘                  # 无责增加,有责修改。
print(dic)

{‘name‘: ‘alex‘, ‘age‘: 10000, ‘sex‘: ‘男‘}
dic = {‘name‘: ‘老男孩‘,‘age‘: 10000,‘sex‘: ‘男‘}
dic = {"name": "jin", "age": 18,"sex": "male"}
dic2 = {"name": "alex", "weight": 75}
dic2.update(dic)             # 将dic里面的键值对覆盖并更新到dic2中,dic不变 。
print(dic)                 # {‘name‘: ‘jin‘, ‘age‘: 18, ‘sex‘: ‘male‘}
print(dic2)                # {‘name‘: ‘jin‘, ‘weight‘: 75, ‘age‘: 18, ‘sex‘: ‘male‘}

{‘name‘: ‘jin‘, ‘age‘: 18, ‘sex‘: ‘male‘}
{‘name‘: ‘jin‘, ‘weight‘: 75, ‘age‘: 18, ‘sex‘: ‘male‘}

列表:查

get()  查找时如果没有此key 不会报错。

dic = {"name": "jin", "age": 18,"sex": "male"}          print(dic[‘name1‘])          print(dic.get(‘name1‘,‘没有此键...‘))    #设置查询key不存在时,的返回值

jin
没有此键...

keys()  返回字典中的所有key

dic = {"name": "jin", "age": 18,"sex": "male"}
for i in dic.keys():
    print(i)

name
age
sex

values()  返回字典中的所有值

dic = {"name": "jin", "age": 18,"sex": "male"}
print(dic.values())

dict_values([‘jin‘, 18, ‘male‘])

items()    返回可遍历的键, 值对

dic = {"name": "jin", "age": 18,"sex": "male"}
for k, v in dic.items():
    print(k, v)

name jin
age 18
sex male

坑: 再循环一个字典时,不要改变字典的大小,这样会影响结果。

dic = {‘k1‘: ‘v1‘, ‘k2‘: ‘v2‘, ‘k3‘:‘v3‘, ‘name‘:‘alex‘}
for k in dic:
    if ‘k‘ in k:
        dic.pop(k)

RuntimeError: dictionary changed size during iteration

原文地址:https://www.cnblogs.com/bailo/p/9032976.html

时间: 2024-08-26 10:13:18

Python:基础数据类型--字典的相关文章

Python基础数据类型考试题

# Python基础数据类型考试题 # 考试时间:两个半小时 满分100分(80分以上包含80分及格) # 一,基础题. # 1, 简述变量命名规范(3分) # 1.变量由字母.数字.下划线任意组成 # 2.不能以数字开头 # 3.不能使用python关键字 # 4.变量要具有可描述性 # 5.变量不能是中文 # 5.官网推荐骆峰体和下划线,这里推荐下划线 # 2,字节和位的关系.(2分) # 1字节 = 8位 # 3,'太白'使用utf-8编码时,占的位数和字节数,是多少?使用gbk编码时,占

Python基础数据类型之字符串

Python基础数据类型之字符串 一.Python如何创建字符串 在python中用引号将一些文本包起来就构成了字符串(引号可以是单引号.双引号.单三引号,双三引号,它们是完全相同的) >>> str1 = 'hello' >>> str2 = "hello" >>> str3 = '''hello''' >>> str4 = """hello""" &g

Python基础数据类型题

Python基础数据类型 题考试时间:三个小时 满分100分(80分以上包含80分及格)1,简述变量命名规范(3分) 1.必须是字母,数字,下划线的任意组合. 2.不能是数字开头 3.不能是python中的关键字 4.变量不能是中文 5.变量不能过长 6, 变量要具有可描述性 2,字节和位的关系.(2分)8位等于1个字节3,'A太白'使用utf-8编码时,占的位数和字节数,是多少?使用gbk编码时,占的位数和字节数,是多少.(2分)'A太白'使用utf-8编码时,占56位和7个字节,使用gbk编

2 Python基础数据类型

Python基础数据类型 # 数据类型分为可变数据类型和不可变数据类型 # 可变数据类型:list.set.dict 不可哈希 # 不可变数据类型:str.int.bool.tuple(元祖) 可哈希 基本类型和数据集 基本类型 int 数字型:int 1,2,3,56 取值范围为:-2\*\*31~2**31-1 可以进行的运算:+ - * / **(幂次方) %(取余) type() 查看数据类型 str 字符串:str python中只要是用引号引起来的全是字符串 字符串转化成数字的条件:

python基础数据类型----整数 ,字符串【常用操作方法】,布尔值,for循环

Python基础数据类型(4.29) bool str int 三者之间的转换 str索引切片,常用操作方法 for循环(大量的练习题) 1.基础数类型总览 整数(int) ,字符串(str),布尔值(bool),列表(list),元组(tuple),字典(dict),集合(set). 10203 123 3340 int 主要用于计算+- * / 等等 '今天吃了没?' str 存储少量的数据,并进行相应的操作.str1 + str2, str *int , 索引,切片, 其他操作方法 Tru

python基础数据类型补充以及编码进阶

01 内容大纲 基础数据类型的补充 数据类型之间的转换 编码的进阶 02 具体内容: 数据类型的补充: str # str :补充的方法练习一遍就行. s1 = 'taiBAi' # capitalize 首字母大写,其余变小写 print(s1.capitalize()) # swapcase 大小写翻转 print(s1.swapcase()) # title 每个单词的首字母大写 msg= 'taibai say3hi' print(msg.title()) s1 = 'barry' #

python基础数据类型补充以及编码的进阶

一. 基础数据类型补充内容 1.1 字符串 字符串咱们之前已经讲了一些非常重要的方法,剩下还有一些方法虽然不是那么重要,但是也算是比较常用,在此给大家在补充一些,需要大家尽量记住. #captalize :首字母大写 #swapcase :大小写翻转 #title :每个单词的首字母大写 #center :内同居中,总长度,空白处填充 #寻找字符串中的元素是否存在 #find :返回的找到的元素的索引,如果找不到返回-1 #index :返回的找到的元素的索引,找不到报错. #captalize

python基础之字典及字符

python基础之字典及字符串处理 本节内容 字典介绍及内置方法 字符串处理 1.字典介绍及内置方法 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的.可哈希表示key必须是不可变类型,如:数字.字符串.元组. 字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型.列表是有序的对象结合,字典是无序的对象集合.两者

python基础数据类型一(字典)

字典 列表可以存储大量的数据类型,但是只能按照顺序存储,数据与数据之间关联性不强. 所以咱们需要引入一种容器型的数据类型,解决上面的问题,这就需要dict字典. 字典(dict)是python中唯?的?个映射类型.他是以{ }括起来的键值对组成. 在dict中key是 唯?的.在保存的时候, 根据key来计算出?个内存地址. 然后将key-value保存在这个地址中. 这种算法被称为hash算法, 所以, 切记, 在dict中存储的key-value中的key必须是可hash的 可以改变的都是不