python中的字典和集合

1.字典

# 基础数据类型
# bool int float str list tuple dict set
# list dict set 可变数据类型
# bool int float str tuple 不可变数据类型


# 1.字典 dict
# dict_data={key: value, key1: value1}
# 1,符号以大括号表示
# 2,数据是以键值对出现的 键值中间用冒号连接
# 3,key的值必须是不可变类型,key是唯一的
print('1.字典')

# 定义一个空字典
dict_data = {}
print(dict_data)
print(type(dict_data))

# 定义一个有数据的字典
# key是不可变数据类型
# value可以是任何数据类型
# key值重复时,后面的键值对会覆盖前面的键值对
dict_data = {'小明': 20, '小明': 18}
print(dict_data)

# 字典是没有索引的 无序的
# 因为没有索引,所以才没有顺序
# 字典可以根据key获取value
dict_data = {'小明': 20, '小芳': {'age': 18, 'gender': ''}}
print(dict_data['小芳'])

# 2.字典增加数据
print()
print('2.字典增加数据')
dict_data = {'小明': 20}
dict_data['小芳'] = 18
print(dict_data)


# 3.字典修改数据
# 原理:相当于增加数据,但是key值重复
# key值重复时,后面的键值对会覆盖前面的键值对
print()
print('3.字典修改数据')
dict_data = {'小明': 20}
dict_data['小明'] = {'age': 18, 'gender': ''}
print(dict_data)

# 增加与修改的区分
# 当数据不存在就增加 当数据存在就是修改


# 4.字典删除数据
print()
print('4.字典删除数据')
dict_data = {'小明': 20}
del dict_data['小明']
print(dict_data)

python中的字典和集合

 

 

2.字典的操作方法

(1)压缩和解包

# 压缩
# 当多个数据赋值给一个变量时,会默认为元组
# 压缩多个数据到一个变量里面,以元组的形式存储
print()
print('压缩和解包')
a = 'name', 18  # 元组
print(a)  # ('name', 18)
# 解包
name, age = a
print(name, age)  # 解包

(2)get()

# get(key,None)
# 获取一个数据,如果存在就返回对应的value 不存在就返回None
# None 是可以改变的,当不存在是返回这个位置的数据,默认为None
print()
print('get()')
dict_data = {'小明': 20}
print(dict_data.get('小明'))  # 20
print(dict_data.get('666'))  # None
print(dict_data.get('666', False))  # False
print(dict_data.get('666', 555))  # 555

python中的字典和集合

 

 (3)pop()和popitem()

# pop()
# 删除指定key的数据
print()
print('pop()')
dict_data = {'小明': 20}
dict_data.pop('小明')  # 删除指定key的数据
print(dict_data)


# popitem()
# 删除字典的最后一个数据
print()
print('popitem()')
dict_data = {'小刚': 15, '小明': 20, '小芳': 18}
dict_data.popitem()
print(dict_data)

python中的字典和集合

 

 (4)update()

# update(字典)  更新
# 相当于列表的extend()
print()
print('update()')
dict_data = {'小刚': 15, '小明': 20}
dict_data.update({'小芳': 18})  # 小括号里面是字典!
print(dict_data)

python中的字典和集合

 

 (5)keys()  values()  items()

# keys()
# 获取字典中的所有key 并存放到一个dict_keys对象里面
print()
print('keys()')
dict_data = {'小刚': 15, '小明': 20}
print(dict_data.keys())
print(type(dict_data.keys()))
print(list(dict_data.keys()))  # 可以强转为列表

for i in dict_data.keys():
    print(i)


# values()
# 获取字典中的所有value
print()
print('values()')
dict_data = {'小刚': 16, '小明': 20}
print(dict_data.values())
print(type(dict_data.values()))
print(list(dict_data.values()))  # 可以强转为列表

for i in dict_data.values():
    print(i)


# items()
print()
print('items()')
dict_data = {'小刚': 18, '小明': 20}
print(dict_data.items())
print(type(dict_data.items()))
print(list(dict_data.items()))  # 可以强转为列表

for i in dict_data.items():
    print(i)
    print(list(i))  # 强转为列表

for i in dict_data.items():
    print(i[0], i[1])

for name, age in dict_data.items():  # 解包
    print(name, age)

python中的字典和集合

 

 

3.集合

# 集合 set
# set_data = {数据,数据,数据,...}
# 集合是无序的,唯一的(数据不能重复)
# 集合没有索引和key

# '' [] {} ()  定义空的数据
# str() list() dict() tuple()
# 定义一个空的集合
set_data = set()
print(type(set_data))
print(set_data)

# 无序的
print()
set_data1 = {100, 200, 300}
print(set_data1)  # 是无序的!

# 唯一的
# 可以去除重复的数据
print()
set_data = {1, 2, 3, 4}
print(set_data)  # {1, 2, 3, 4}
set_data = {1, 2, 3, 4, 4}
print(set_data)  # {1, 2, 3, 4} 和上一个一样

# add() 增加数据
print()
set_data = {1, 2, 3, 4}
set_data.add(100)
print(set_data)

# remove() 删除数据
print()
set_data = {1, 2, 3, 4}
set_data.remove(2)  # 删除数据2
print(set_data)

python中的字典和集合

 

 

4.今日作业

# 今日作业
"""
本次考试张三59分,李四80,
王五99分,小宋56分,
请使用字典来表达此数据结构,
并筛选出来不及格的同学及分数
"""
print('今日作业')
name_score = {'张三': 59, '李四': 80,
              '王五': 99, '小宋': 56}  # 创建字典存储数据
for name, score in name_score.items():  # 解包
    if score < 60:  # 判断是否不及格
        print(name, score)

python中的字典和集合

 

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python中的字典和集合 - Python技术站

(0)
上一篇 2023年4月2日
下一篇 2023年4月2日

相关文章

  • python中的列表和元组

    # 1.列表的格式 # [数据1,数据2,数据3,···] # 列表 可变数据类型 # 列表可以存储多个数据,数据之间的逗号以英文逗号分隔 # 列表可以存储不同类型数据,但一般存储同一数据类型,这样便于操作 # list_name = [] # 定义了一个空的列表 # 定义了一个有数据的列表 # 可以去索引和切片 print(‘1.列表的格式’) list_…

    2023年4月2日
    00
  • python中的while循环

    1.while循环 “”” while 条件: 执行语句1··· 执行语句2·· “”” # while 1+1 == 2: # print(‘666’) # 计数器 叫法 代表一个功能 # i = 0 # 定义一个临时变量 记录循环次数 # while 1 + 1 == 2: # i += 1 # 循环次数+1 自增1 # print(‘我帅’, i) i…

    2023年4月2日
    00
  • python中的字典和集合

    # 1.字典 存储数据 存储一个数据的属性 可以快速进行查找 # dict_data = {key:value,key:value,…} # key是键 # value是值 # 以大括号表示 # 数据是以键值对出现的 键值对中间用冒号连接 # key的值必须是不可变类型 # 字典和列表和集合是可变类型 print(‘1.字典’) dict_data = …

    2023年4月2日
    00
  • python中的文件操作

    起初data.txt文件是这样的 # 一直打开文件但却不关闭文件会导致内存溢出 # 在python,使用open函数, # 可以打开一个已经存在的文件,或者创建一个新文件, # 语法如下: open(name, mode) # name: 是要打开的目标文件名的字符串(可以包含文件所在的具体路径)。 # mode: 设置打开文件的模式(访问模式):只读、写入…

    2023年4月2日
    00
  • python中的高阶函数

    1.匿名函数 # lambda表达式 # 匿名函数 # 没有名字的函数 相当于 # 优点:节省内存空间 优化代码 # def add(a, b): # return a+b def add(a, b): return a + b # 当函数里面的代码只有一行的时候可以这样写! print(add(1, 2)) # 但函数里面的代码只有一行,可以转换为匿名函数…

    2023年4月2日
    00
  • python中的面向对象

    # 面向对象是非常重要的! # 抽象,是个思想,结构 # 小明 小红 小雨 都是人 # 海尔洗衣机 海东洗衣机 海西洗衣机 都是洗衣机 # 猫 狗 熊猫 都是动物 # 蓝图 # # class WashingMachine: # 类名一般是大驼峰 # pass # # 特征是属性 # age = 20 # # 行为是方法 # def # 先有类,后有对象 #…

    2023年4月2日
    00
  • python中的for循环

    1.range # 1.range(起始值,结束值,步长) # 范围 区间 # 步长不写时默认是1 # 当里面只有一个数据的时候,默认是0-结束值 # 当里面有两个数据的时候,是 起始值-结束值 print(‘1.range()’) print(range(5, 9, 1)) print(type(range(9)))       2. for循环 # 2.…

    2023年4月2日
    00
  • python函数入门

    1.函数的作用 # sum() max() min() len() type() # 使用函数都需要加一个括号 # 有自己的功能 # ‘a’.replace() # 称为方法 点出来的有括号的称为方法 # a.name # 称为属性 # sum() # 是函数 # 不加括号时,sum代表的是整个函数 # 加了括号时,sum()代表的是使用函数 # 1.函数的…

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