Python基础学习(4)散列类型(无序序列)

文章目录

  • 一,认识集合
    • 1.定义
    • 2.运算
  • 二.集合方法
    • 1.删
    • 2.增
  • 三.认识字典
    • 1.字典(dict)
    • 2.特性
    • 3.字典方法
      • ①查
      • ②改
      • ③增
      • ④删
  • 四.声明空变量

Python基础学习(1)基本知识
Python基础学习(2)序列类型方法与数据类型转换
Python基础学习(3)进阶字符串(格式化输出)
Python基础学习(4)散列类型(无序序列)
Python基础学习(5)流程控制
Python基础学习(6)函数基础与函数参数
Python基础学习(7)函数作用域与名称空间

一,认识集合

1.定义

集合(set)
集合的特性:唯一性 无序性 主要用来进行去重和逻辑判断

表示形式为:
用大括号{}包裹起来的数据 数据之间用逗号隔开

语法格式:
集合名={数据1,数据2…}

food = {'旺仔牛奶', '螺蛳粉', '热干面', '可乐鸡翅', '蜜汁小汉堡', '东坡肉'}
print(food)num = {1, 2, 5, 1, 2, 5, 4, 3, 1, 2}
# 正常输出一个集合里面重复的元素自动去除 代表集合唯一性去重性
print(num)
# print(num[3]) # 报错 因为集合是无序类型没有下标 所以序列类型的特性

2.运算

进行逻辑运算 集合逻辑运算
集合1&集合2 – 获取交集
集合1|集合2 – 获取并集
集合1-集合2 – 获取差集

    class116 = {'秦锐灵', '荷包蛋', '谢斌'}class117 = {'桑杰伦', '坤坤', '谢斌'}# 交集print(class116 & class117)# 并集print(class116 | class117)# 差集print(class116 - class117)print(class117 - class116)

集合作用: 在有两个文件的时候 数据繁琐的时候 通过逻辑判断 可以帮助你找到重复的数据进行去重的操作 也可以通过交集操作去删除多余的文件

注意
①集合可以放很多数据 字符串 布尔值 整型 浮点型 元组等等 但是集合不能放列表
②集合里面只能放不可修改的数据
③集合里面不能放列表/集合/字典!!!

二.集合方法

1.删

①pop:删除一个数据(根据版本不同有些从头开始删除或者随机删除或者从末尾删除)
语法格式:集合名.pop()

②remove:删除指定的数据
语法格式:集合名.remove(数据)

③clear:清空数据
语法格式:集合名.clear()

2.增

add:增加一个数据(随机)
语法格式:集合名.add(数据)

#增
a = {'你好', 666, 6.6, True, (66, 7, 66)}
a.add(8)  # 随机添加  因为无序
a.add('不良帅')
print(a)

三.认识字典

1.字典(dict)

表示形式为:字典是用大括号包裹起来的 存储数据是以键值对的方式存储 数据之间用逗号隔开 主要存储一些带有'说明'性质的数据语法格式:键值对:{键:值}字典名 = {键:值,键:值,键:值.....}字典的键是不可变类型 字典的值可以是任意类型
mes1 = {'姓名': '谭楚泽', '年龄': 18, '工资': 9.9, '姓名': '于健康'}
print(mes1)
# 字典中的键名重复的情况下 后面的会把前面的覆盖name='卧'
name='康'1
print(name)

2.特性

①通过键值对的方式存储数据 取数据 而不是通过下标索引
②字典里的数据是可以改变的 并且可以嵌套(字典里放字典)
③键名是唯一性

3.字典方法

①查

字典跟集合一样是无序序列所以无法通过下标进行获取数据或者查询数据

①通过键(key)寻找值
语法格式: 字典名[键名]

②get通过键(key)获取值
语法格式: 字典名.get(键名)

③ 其他查询方法
字典名.keys() # 获取字典中所有的键
字典名.values() # 获取字典中所有的值
字典名.items() # 获取字典中所有的键值对(键值对是以元组的形式输出)

a={"姓名":"小孩","工资":15515,"姓名":"大孩子"}
print(a["工资"])
print(a.get("姓名"))
print(a.values())
print(a.keys())
print(a.items())
15515
大孩子
dict_values(['大孩子', 15515])
dict_keys(['姓名', '工资'])
dict_items([('姓名', '大孩子'), ('工资', 15515)])

②改

语法格式: 字典名[键名]=新的值

③增

语法格式: 字典名.setdefault(键,值)

可以增加也可以修改 一次性可以添加多个键值对 数据之间逗号隔开
语法格式: 字典名.update({键:值,键:值})

    ho = {'红头发': '黄滨', '绿头发': '坤坤'}ho.update({'黄头发': '小北', '粉头发': '谭凯', '白色中分': '叶论文'})ho.update({'黄头发': '小李'}) # 键名存在会修改 修改键的值 如果没有就会新增ho.setdefault('五颜六色头发') # 没有值 默认空NONEho.update({'五颜六色头发':'小北'})print(ho)

④删

1.pop: 通过键名指定删除数据
语法格式: 字典名.pop(键名)

2.popitem: 根据版本信息不同随机删除键值对
语法格式: 字典名.popitem()

3.clear: 全部清除
语法格式: 字典名.clear()

ho = {'红头发': '黄滨', '绿头发': '坤坤','黄头发': '小北', '粉头发': '谭凯','白色中分': '叶论文'}
ho.pop('黄头发') #通过键名删除
ho.pop('头发') #键名不存在是报错的
ho.popitem() #随机删除
# ho.clear() #全部清除
print(ho)

四.声明空变量

li=[] #声明空列表
lis=() #声明空元组
lst=‘’ #声明一个空字符串
mo={} #声明一个空字典因为字典比集合用的多
me=set() #声明一个空集合

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/742046.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

专题1 - 双指针 - leetcode 15. 三数之和 - 中等难度

leetcode 15. 三数之和 - 点击直达 leetcode 15. 三数之和 中等难度 双指针1. 题目详情1. 原题链接2. 基础框架 2. 解题思路1. 题目分析2. 算法原理3. 时间复杂度 3. 代码实现4. 知识与收获 leetcode 15. 三数之和 中等难度 双指针 1. 题目详情 给你一个整数数组 nums &#…

通过xlsx库解析读取excel表格内容

一、使用 有时项目中有需要前端自己将本地的excel文件导入并获取内部数据,最终处理数据(批量导入等场景) 这时我们就可以用到一个库(xlsx)来读取excel中的内容,然后通过其API能力将数据转换成json格式 具…

Pytorch实战01——CIAR10数据集

目录 1、model.py文件 (预训练的模型) 2、train.py文件(会产生训练好的.th文件) 3、predict.py文件(预测文件) 4、结果展示: 1、model.py文件 (预训练的模型) impor…

吴恩达机器学习笔记 十七 通过偏差与方差诊断性能 正则化 偏差 方差

高偏差(欠拟合):在训练集上表现得也不好 高方差(过拟合):J_cv要远大于J_train 刚刚好:J_cv和J_train都小 J_cv和J_train与拟合多项式阶数的关系 从一阶到四阶,训练集的误差越来越小…

力扣串题:验证回文串2

整体思路&#xff1a;先找到可能存在问题的点&#xff0c;然后判断&#xff0c;如果一切正常则左指针会来到字符串中部 bool isValidPalindrome(char *s, int i, int j) {while (i < j) {if (s[i] ! s[j]) {return false;}i;j--;}return true; }bool validPalindrome(char …

禁用文本框输入中文,禁用中文输入法的ImeMode方法

之前遇到一个问题&#xff0c;在文本框切换输入法为中文后&#xff0c;使用扫码枪扫码时 会出现 比如条码NH123456 在文本框内会显示 你好23456 这里可以使用输入法编辑器ImeMode枚举属性 如果文本框只能输入英文数字&#xff0c;可以使用ImeMode.Disable&#xff0c;但默…

python界面开发 - Canvas绘制图形

文章目录 1. Tkinter 开发2. Canvas绘制图形2.1. 示例1:绘制矩形、椭圆和多边形2.2. 示例2:绘制柱状图、折线图2.3. 示例3&#xff1a;同时绘制多个画布 3. python图形界面开发3.1. Python图形界面开发——Tkinter3.2. Python图形界面开发——PyQt3.3. Python图形界面开发——w…

LeetCode(力扣)算法题_1261_在受污染的二叉树中查找元素

今天是2024年3月12日&#xff0c;可能是因为今天是植树节的原因&#xff0c;今天的每日一题是二叉树&#x1f64f;&#x1f3fb; 在受污染的二叉树中查找元素 题目描述 给出一个满足下述规则的二叉树&#xff1a; root.val 0 如果 treeNode.val x 且 treeNode.left ! n…

js【详解】ajax (含XMLHttpRequest、 同源策略、跨域)

ajax 的核心API – XMLHttpRequest get 请求 // 新建 XMLHttpRequest 对象的实例 const xhr new XMLHttpRequest(); // 发起 get 请求&#xff0c;open 的三个参数为&#xff1a;请求类型&#xff0c;请求地址&#xff0c;是否异步请求&#xff08; true 为异步&#xff0c;f…

探秘Elasticsearch:高性能搜索引擎的原理与应用场景(一)

本系列文章简介&#xff1a; 本系列文章将探秘Elasticsearch的原理与应用场景&#xff0c;从基本原理到具体应用&#xff0c;带领读者全面了解这一强大的搜索引擎。首先我们将介绍Elasticsearch的基本原理&#xff0c;包括分布式架构、倒排索引和分片等核心概念。然后我们将深入…

【Python】shutil库的介绍及用法

目录 1、应用场景 2、shutil-标准库 1、应用场景 Python的shutil库主要用于文件的读取、创建、复制、删除、移动等操作&#xff0c;以下是一些典型的使用场景&#xff1a; 复制文件&#xff1a; 使用shutil.copy(src, dst)可以复制一个文件。源和目标位置都可以是文件也可以…

ChatGPT免费使用网站分享大全,可以直接访问

方法在结尾 介绍&#xff1a; ChatGPT是OpenAI公司开发的一种基于大规模预训练的语言模型。作为GPT-3系列的最新版本&#xff0c;GPT-3.5 Turbo集成了最新的技术改进&#xff0c;具备了更强大的对话生成能力。 GPT-3.5 Turbo是一个自动对话系统&#xff0c;它能够理解和生成…

Linux使用git命令行教程

. 个人主页&#xff1a;晓风飞 专栏&#xff1a;数据结构|Linux|C语言 路漫漫其修远兮&#xff0c;吾将上下而求索 文章目录 git安装git仓库的创建.git 文件添加文件git 三板斧(add,commit,push)解释拓展git log.gitignore git安装 首先输入git --version看看有没有安装git 如…

Python语言在编程业界的地位——《跟老吕学Python编程》附录资料

Python语言在编程业界的地位——《跟老吕学Python编程》附录资料 ⭐️Python语言在编程业界的地位2024年3月编程语言排行榜&#xff08;TIOBE前十&#xff09; ⭐️Python开发语言开发环境介绍1.**IDLE**2.⭐️PyCharm3.**Anaconda**4.**Jupyter Notebook**5.**Sublime Text** …

操作系统——cpu、内存、缓存介绍

一、内存是什么 内存就是系统资源的代名词&#xff0c;它是其他硬件设备与 CPU 沟通的桥梁&#xff0c; 计算机中的所有程序都在内存中运行。其作用是暂时存放CPU的运算数据&#xff0c;以及与硬盘交换的数据。也是相当于CPU与硬盘沟通的桥梁。只要计算机在运行&#xff0c;CP…

【C++那些事儿】深入理解C++类与对象:从概念到实践(下)| 再谈构造函数(初始化列表)| explicit关键字 | static成员 | 友元

&#x1f4f7; 江池俊&#xff1a;个人主页 &#x1f525; 个人专栏&#xff1a;✅C那些事儿 ✅Linux技术宝典 &#x1f305; 此去关山万里&#xff0c;定不负云起之望 文章目录 1. 再谈构造函数1.1 构造函数体赋值1.2 初始化列表1.3 explicit 关键字 2. static成员2.1 概念…

PostgreSQL9.6迁移至16.2

由于更换服务器,需要将原服务器上的应用迁移至新服务器。旧服务器应用环境为.NET4.0+PostgreSQL9.6,新服务器应用环境为.NET4.0+PostgreSQL16.2。 1、备份数据库 在旧服务器中,使用 pg_dump 命令进行备份。 pg_dump -U username -W -F c -f backup_file.pgdump database_…

python基本使用

set1 {1, 2, 3, 4, 56} set2 {"123", "abc", 123}print(set1) # print(set1[1]) print(set2)for s1 in set2:print(s1)pass 更多python 用法 看gitee.com代码库 python-study: python study

进程pid=0是什么意思

在操作系统中&#xff0c;进程是指正在运行中的程序实例。每个进程都有一个唯一的标识符&#xff0c;称为进程ID&#xff08;Process ID&#xff09;&#xff0c;通常简称为PID。 进程的PID是一个非负整数&#xff0c;用来唯一标识该进程。PID0通常被保留给操作系统内核进程&a…

EasyPoi 教程

文章目录 EasyPoi教程文档1. 前传1.1 前言 这个服务即将关闭,文档迁移到 http://www.wupaas.com/ 请大家访问最新网站1.2 Easypoi介绍1.3 使用1.4 测试项目1.5 可能存在的小坑 2. Excel 注解版2.1 Excel导入导出2.2 注解注解介绍ExcelTargetExcelEntityExcelCollectionExcelIgn…