Python 基础 笔记(八) 容器---元组、字典、集合

简介: Python 基础 笔记(八) 容器---元组、字典、集合

一、元组

1、元组--入门

"""
元组格式:
    tuple1 = ('hello','world','python')   #值不可变
  #元组可以存储多个数据且元组内的数据是不能修改的。
"""
 
# 定义一个元组:多个数据
t_1 = (11, 22, 33, 33, 'hello', True)  # 定义元组使用小括号,且使用逗号隔开各个数据,数据可以是不同的数据类型。
 
 
print(t_1)
print(type(t_1))
 
print('-----------------------------------')
 
t_2 = (10,)
print(t_2)
print(type(t_2))
"""
列表格式:
    list1 = ['hello','world','python']   #值可变
元组格式:
    tuple1 = ('hello','world','python')   #值不可变
  #元组可以存储多个数据且元组内的数据是不能修改的。
"""
 
t_1 = (11, 22, 33, ['xxx', 'yyy', 'zzz'], 44, 55)
print(t_1[2])
print(t_1[3][1])
 
 
print('---------------------')
 
# t_1[2] = 88  # 报错:元组不能修改
t_1[3][1] = 'www'   # 元组中如果嵌套列表,则列表中的元素是可以修改
print(t_1)
 
 

2、元组--函数

"""
函数:
 元组[索引]
 index() :获取元素在元组中的索引
 count() :统计某个元素在元组中出现的次数
 len()   :元组中元素的个数
"""
 
# 空列表
list1 = []
# 空元组
t_0 = ()
print(type(t_0))
 
t_1 = (11, 22, 33, ['xxx', 'yyy', 'zzz'], 44, 33, 33, 55)
 
print(t_1.index(33))  # 2  --->33在元组中出现的索引是2
# print(t_1.index('yyy')) # 报错
 
print(t_1.count(33))  # 3  表示33在元组中出现3次
 
print(len(t_1))  # 8 表示元组中有8个元素,嵌套的列表是一个元素

元组

  • 特点: 元组中的数据不可变化
  • 只有一个元素的元组: (1,)
  • in/not in()
  • count()
  • index()
  • 下标获取元素的值

二、字典

1、字典--入门

"""
字典描述的就是键值对
根据键找对应的值
"""
 
# 定义空字典
d_1 = {}
d_2 = dict()
print(type(d_1))
print(type(d_2))
 
# 定义字典
d_person = {'name': '张三', 'age': 18, 'sex': '男'}
print(d_person)
 
# 在字典中添加元素
d_person['address'] = '北京'  # 如果添加的键不存在,则加入
d_person['age'] = '99'  # 如果添加的键存在,则修改
print(d_person)
 
# 从字典中查找元素: 根据键  获取值
print(d_person.get('name2'))  # 如果键存在,则返回对应的值,如果键不存在,则返回None
print(d_person.get('id', '1000'))  # 如果键存在,则返回对应的值,如果键不存在,则返回默认值
print('--------------------------')
print(d_person['name'])
print(d_person['age'])

2、字典--遍历

"""
字典描述的就是键值对
根据键找对应的值
"""
 
# 定义字典
d_person = {'name': '张三', 'age': 18, 'sex': '男'}
print(d_person)
 
print('----------- 遍历方法一 -----------------')
# 获取字典中所有的键(丈夫)
keys = d_person.keys()
 
# 遍历每一个key 通过每一个key去获取对应的值
for key in keys:
    print(f'{key} {d_person[key]}')
print('--------------------')
for key in keys:
    print(f'{key} {d_person.get(key)}')
 
# 获取字典中所有的值(媳妇)
values = d_person.values()
print(values)
 
print('----------- 遍历方法二 -----------------')
 
items = d_person.items()  # [('name', '张三'), ('age', 18), ('sex', '男')]
for item in items:
    print(f"{item[0]} \t {item[1]}")
 
print('----------- 遍历方法三 -----------------')
items = d_person.items()  # [('name', '张三'), ('age', 18), ('sex', '男')]
for k, v in items:
    print(f"{k} \t {v}")

3、字典--删除和清空

"""
可变容器:列表、字典
不可变容器:字符串、元组
"""
# 定义字典
d_person = {'name': '张三', 'age': 18, 'sex': '男'}
 
del d_person['age']  # 删除age对应的键值对
d_person.clear()  # 清空字典
del d_person  # 删除字典
print(d_person)

字典


使用场景:


存储一类相同数据的时候 使用列表存储


存储某一人或者事物的详细描述信息 使用字典存储


注意点


key-value的形式存储数据的


字典的key值必须是不可变的数据类型


不可变的数据类型


字符串


数字类型


元组


可变的数据类型


列表


字典中的key值都是唯一的


字典的使用



a["新的key"] = value


删除


del a["key"]



a["老的key"] = value



a[key]


字典的函数


keys()


获取全部的key值 存储到一个列表中


values()


获取全部的value值 存储到一个列表中


items()


获取全部的key-value对


for i in 字典.items()


for key,vlaue in 字典.items()

三、集合

1、集合--入门

"""
1、集合是Python中的容器,使用{}来表示
2、集合中的元素的值是唯一的,如果你存储的数据不唯一,则集合会自动去重
3、集合中存储数据的顺序和取出的顺序没关系
   'hello' 'python'  'java' ----->  'python'  'java' 'hello'
集合唯一的作用就是去重
集合是可变的
"""
 
# 1、定义空集合
set1 = {}  # 不行,这种是定义字典
print(type(set))
 
set2 = set()  # 行,空集合
print(type(set2))
 
set2.add('xxxx')  # 集合是可变的
print(set2)
 
# 2、定义非空集合
set2 = {'hello', 'hello', 'hello', 1, 1, 1}  # 去重,存取无序
print(set2)
# print(set2[0])   集合是无序的,不可用索引获取数据,没有索引的概念
 
# 3、列表和集合的转换
# 3.1列表转集合
print('------------------------------------')
list1 = [1, 1, 1, 'hello', 'hello', True, True, True]
set3 = set(list1)  # 类似于强转
print(set3)
 
# 3.2集合转列表
set4 = {'hello', 1, 3, 'hello', True, 'python', 1, 3}
list2 = list(set4)  # 类似于强转
print(list2)

2、集合--基本操作

"""
1、集合是Python中的容器,使用{}来表示
2、集合中的元素的值是唯一的,如果你存储的数据不唯一,则集合会自动去重
3、集合中存储数据的顺序和取出的顺序没有关系
   'hello' 'python'  'java' ----->  'python'  'java' 'hello'
集合唯一的作用就是去重
集合是可变的
"""
# 定义集合
set1 = {1, 2, 3, 4, 5}
 
set1.add(8)  # 向集合添加元素
set1.remove(5)  # 移除集合的元素
del set1
 
# print(set1)
# print('----------------------------')
#
# print(4 in set1)  # 判断4是否在集合中,布尔
#
# print('----------------------------')
# # 遍历集合
# for i in set1:
#     print(i,end=' ')
目录
相关文章
|
15小时前
|
存储 索引 Python
Python基础第五篇(Python数据容器)
Python基础第五篇(Python数据容器)
|
4天前
|
索引 Python 容器
【Python核心数据结构探秘】:元组与字典的完美协奏曲
【Python核心数据结构探秘】:元组与字典的完美协奏曲
|
4天前
|
存储 Python 容器
Python零基础入门-5 数据结构(集合和字典)
Python零基础入门-5 数据结构(集合和字典)
|
4天前
|
算法 计算机视觉 Python
openCV 3计算机视觉 Python语言实现 笔记 第4章 深度估计与分割
openCV 3计算机视觉 Python语言实现 笔记 第4章 深度估计与分割
|
4天前
|
算法 计算机视觉 Python
openCV 3计算机视觉 Python语言实现 笔记 第三章 使用OpenCV 3处理图像
openCV 3计算机视觉 Python语言实现 笔记 第三章 使用OpenCV 3处理图像
|
4天前
|
计算机视觉 索引 Python
openCV 3计算机视觉 Python语言实现 笔记__第二章 处理文件、摄像头和图形用户界面
openCV 3计算机视觉 Python语言实现 笔记__第二章 处理文件、摄像头和图形用户界面
|
4天前
|
机器人 计算机视觉 Python
openCV 3计算机视觉 Python语言实现 笔记__第一章
openCV 3计算机视觉 Python语言实现 笔记__第一章
|
5天前
|
Python
Python基础教程(第3版)中文版 第20章 项目1: 自动添加标签(纯文本转HTML格式) (笔记2)
Python基础教程(第3版)中文版 第20章 项目1: 自动添加标签(纯文本转HTML格式) (笔记2)
|
5天前
|
Python
Python基础教程(第3版)中文版 第20章 项目1: 自动添加标签(纯文本转HTML格式) (笔记)
Python基础教程(第3版)中文版 第20章 项目1: 自动添加标签(纯文本转HTML格式) (笔记)
|
Python 容器
捋一捋操作python容器的内置通用函数
正式的Python专栏第31篇,同学站住,别错过这个从0开始的文章!
247 0
捋一捋操作python容器的内置通用函数