【Python零基础学习入门篇④】——第四节:Python的列表、元组、集合和字典

news2024/11/17 7:18:21

在这里插入图片描述

⬇️⬇️⬇️⬇️⬇️⬇️
⭐⭐⭐Hello,大家好呀我是陈童学哦,一个普通大一在校生,请大家多多关照呀嘿嘿😁😊😘
🌟🌟🌟技术这条路固然很艰辛,但既已选择,该当坚毅地走下去,加油!
🌤️PUA:你所看到的惊艳都曾平庸历练**“**🚀🚀🚀
🍉🍉🍉最后让我们一起努力奋斗,愿美好的事发生在我们身上~🍺🍺🍺🍺
🍭🍭🍭那么接下来我们就进入到Python基础篇第三节:Python的字符串类型的学习吧🚩🚩🚩
🌠 🌌 🎆 🎇

📢📢📢早点学,早轻松:

  • 1️⃣学习目标——明方向 ✅ ✅ ✅
  • 2️⃣ 学习任务——冲鸭!☑️ ☑️ ☑️
    • ⭐01列表
      • ⭐为什么要列表?
      • ⭐列表的定义及语法
      • ⭐列表的常用操作
      • ⭐列表的循环遍历
      • ⭐列表的特点
    • ⭐02元组
      • ⭐为什么要元组?
      • ⭐元组的定义及语法
      • ⭐元组的常用操作
      • ⭐元组的循环遍历
      • ⭐元组的特点
    • ⭐03集合
      • ⭐为什么要集合?
      • ⭐集合的定义及语法
      • ⭐集合的常用操作
      • ⭐集合的特点
    • ⭐04字典
      • ⭐为什么要字典?
      • ⭐字典的定义及语法
      • ⭐字典的常用操作
      • ⭐字典的特点
  • 3️⃣本章小结——明思路 🤏 🤏 🤏
  • 4️⃣往期回顾——温故知新🏆🏆🏆
  • 5️⃣写在最后——暖心寄语💕💕💕

1️⃣学习目标——明方向 ✅ ✅ ✅

🔘🔘🔘持之以恒, 坚持不懈地去完成我们内心的目标,只有勇于学习,才能不断进步!

  1. 了解并掌握列表的定义及使用
  2. 了解并掌握元组的定义及使用
  3. 了解并掌握集合的定义及使用
  4. 了解并掌握字典的定义及使用

2️⃣ 学习任务——冲鸭!☑️ ☑️ ☑️

🚩🚩🚩人生难得几回搏,加油呀童学们,胜利就在⬇️⬇️⬇️⬇️⬇️

⭐01列表

⭐为什么要列表?

如果我们需要储存一个班上所有学生的姓名,那么我们首先想到的肯定是用字符串类型的变量来存取,可是一个班级的学生往往都是数十个起步的,难不成每个名字我们都用一个变量来储存吗?很显然这种重复低效的工作会让我们感到厌倦。而列表就能够很好的解决这个问题。

⭐列表的定义及语法

列表(list)是Python中的一种数据容器,它可以一次储存多个数据,且可以为不同类型的数据,支持嵌套
列表的下标(索引)也是从0开始的。 我们固然也可以通过列表的下标来访问列表中指定位置的值。
例:

#定义一个列表
list1 = ["ctx","wowo","666"]
print(list1)
print(type(list1))

#定义一个嵌套的列表
list2 =[ [1,2,3],[4,5,6] ]
print(list2)
print(type(list2))

#通过列表的下标访问列表中的数据
list3 = ["chen","tong","xue"]
print(list3[0])
print(list3[1])
print(list3[2])

#访问嵌套列表中的数据
list4 = [ [6,7,8],[9,11,12] ]
print(list4[0][0])
print(list4[1][1])

⭐列表的常用操作

列表中增添元素功能(方法):

  • 1.列表.insert(下标,元素)——在指定下标处插入指定的元素
  • 2.列表.append(元素)——在列表尾部追加一个元素
  • 3.列表.extend(数据容器)——将数据容器中的元素一次添加到列表尾部

列表中删除元素功能(方法):

  • 1.del 列表[下标]——删除列表该下标下的元素
  • 2.列表.pop(下标)——同上
  • 3.列表.remove(元素)——从前往后(从左至右)删除与括号内元素相同的列表元素
  • 4.列表.clear()——清空列表中所有元素

列表中统计元素功能(方法):

  • 1.列表.count(元素)——统计括号内元素在列表中出现的次数
  • 2.len(列表)——统计列表元素的总个数

列表中查找下标功能(方法):

  • 1.列表.index(元素)——查找指定元素在列表中的下标,如果找不到会报错

⭐列表的循环遍历

1.通过while循环遍历列表

#while循环遍历列表
list2 = ["ctx","666","insist"]
i=0
while i<len(list2):
    print(list2[i])
    i+=1

2.通过for循环遍历列表

#for循环遍历列表
list1 = [ "ctx","666","insist"]
for i in list1:
    print(i)

⭐列表的特点

  • 1.可以储存多个数据
  • 2.可以储存不同类型的数据
  • 3.数据的储存是有序的(下标从0开始递增)
  • 4.数据可以重复
  • 5.数据可以修改(增添或删除元素等)

⭐02元组

⭐为什么要元组?

列表中的数据是可以修改的,但如果我们想要传递信息且数据不被纂改,列表就不是那么的合适了,因此我们引出了元组。

元组同列表一样们都是可以储存多个不同类型的数据的,它们最大的区别就是:
元组一旦完成定义,就不能再被修改了。(只读文档)

⭐元组的定义及语法

1.定义一个元组(元组小括号哦,前面的列表方括号

#定义一个元组
tuple1 = ("ctx","666")
print(tuple1)
print(type(tuple1))

注意:定义只有一个数据的元组时必须在这个数据后面加逗号

#定义只有单个元素的元组
tuple2 = ("ctx")   #不加逗号时的数据类型为字符串型
print(type(tuple2))

tuple2 = ("ctx",) #加逗号时的数据类型才为元组
print(type(tuple2))

2.元组的嵌套

#元组的嵌套
tuple3 = ( (1,2,3),(4,5,6))
print(tuple3)
print(type(tuple3))

3.通过下标(索引)访问元组中的数据

#通过下标(索引)访问元组中的数据
tuple3 = ( (1,2,3),(4,5,6))
print(tuple3[0])
print(tuple3[1][1])
print(type(tuple3))

⭐元组的常用操作

由于元组中的数据不可修改,所以元组的操作较少。

  • 1.元组.index(元素)——查找指定元素在元组中的下标
  • 2.元组.count(元素)——统计指定元素在元组中的数量
  • 3.len(元组)——统计元组中所有元素的总个数
#元组的相关操作
tuple4 = ("ctx","666","nb","nb")
#查找指定元素的下标
print(tuple4.index("ctx"))
#统计指定元素的个数
print(tuple4.count("nb"))
#统计元组中元素的总个数
print(len(tuple4))

⭐元组的循环遍历

1.通过while循环遍历

#while循环遍历元组
tuple5 = ("ctx","nb","handsome")
i=0
while i<len(tuple5):
    print(tuple5[i])
    i+=1

2.通过for循环遍历

#for循环遍历元组
tuple6 = ("ctx","nb","handsome")
for i in tuple5:
    print(i)

⭐元组的特点

  • 和列表(list)基本相同(有序、可包含多个不同类型的数据、数据可重复),不可修改。

⭐03集合

⭐为什么要集合?

前面我们说的列表和元组中的数据都是有序且数据可重复,这一定程度上可以方便我们的某些操作但也有一定的局限性。如果我们需要的数据内容不需要重复的数据的话我们就需要去重,而集合又很好的帮助我们解决了这个问题。

集合不允许数据的重复,很好的帮我们去重了,且集合中的数据无序。

⭐集合的定义及语法

1.定义一个集合(集合使用的是花括号哦!)

#定义集合
set1 = {"ctx","ctx","handsome","handsome"}  #自动去重
print(set1)
print(type(set1))

因为集合是无序的,所有它不支持通过下标(索引)去访问集合中的数据,但它与列表一样是可以修改的。

⭐集合的常用操作

  • 1.集合.add(元素)——向集合内添加一个元素
  • 2.集合.remove(元素)——移除集合内指定的元素
  • 3.集合.pop()——从集合中随机取出一个元素
  • 4.集合.clear()——清空集合
  • 5.集合1.difference(集合2)——得到一个新的集合,该集合的数据为两个集合的差集,原来的集合1和集合2中的数据不发生改变
  • 6.集合1.difference_update(集合2)——在集合1中删除与集合2相同的元素,集合发生改变,集合2不发生改变。
  • 7.集合1.union(集合2)——得到一个新的集合,该集合的数据为两个集合中的全部元素(不重复),集合1和集合2不发生改变。
  • 8.len(集合)——添加集合中的元素总个数

⭐集合的特点

  • 可以容纳多个不同类型的数据
  • 数据是无序的(不可通过下标访问)
  • 数据不允许重复
  • 可修改e
  • 支持for循环,不支持while循环(不可通过下标访问)

⭐04字典

⭐为什么要字典?

日常生活中我们用字典查找一个字时我们可以通过这个字的首字母或者笔画数来找到。而Python中的字典差不多也是这么个意思,字典中的每个元素都包含两部分:键(Key)值(Value)

我们称字典中的每个元素为一个键值对,使用字典,可以实现用键(Key)来取出值(Value)

⭐字典的定义及语法

#字典的定义
dict1 = {"陈童学1":99,"陈童学2":98,"陈童学3":100}
print(dict1)
print(type(dict1))

注意:字典中的键时不允许重复的,否则新的键(Key)会覆盖老的键(Key)

#字典的定义
dict1 = {"陈童学1":99,"陈童学1":98,"陈童学3":100}
print(dict1)
print(type(dict1))

在这里插入图片描述
字典中的键(Key)和值(Value)可以为任意的数据类型(但Key不可为字典类型

例:

dict1 = {"陈童学1":{
    "语文":66,
    "数学":99,
    "英语":88
    },
    "陈童学2":{
    "语文":77,
    "数学":98,
    "英语":89
    },
    "陈童学3":{
    "语文":55,
    "数学":88,
    "英语":66
    },
    }
print(dict1["陈童学1"]["语文"])
print(dict1["陈童学2"]["数学"])
print(dict1["陈童学3"]["英语"])
print(type(dict1))

⭐字典的常用操作

  • 1.字典[Key]——获取指定Key对应的Value值
  • 2.字典[Key] = Value——添加或更新键值对
  • 3.字典.pop(Key)——取出Key对应的Value值并在该字典内删除此Key-Value对
  • 4.字典.clear()——清空该字典
  • 5.字典.keys()——获取该字典的全部Key
  • 6.len(字典)——计算该字典内元素(键值对)的数量

⭐字典的特点

  • 可容纳多个不同类型的数据
  • 字典中的每一个元素都是一个键值对(Key-Value)
  • 可以通过字典中的Key获取到Value,但Key不可重复(重复会以新的为基准)
  • 不支持通过下标(索引)访问键值对
  • 字典可修改
  • 支持for循环,不支持while循环(因为不能通过下标访问)

3️⃣本章小结——明思路 🤏 🤏 🤏

🌈🌈🌈人生本就是一场旅途,总得经历一些艰苦才能翻山越岭,遇见那些美好的事物吧!我们不该停止奋斗,但也请别忘记停下脚步欣赏沿途的美景。

本文主要讲解了列表、元组、集合、字典四种数据容器,其一些的相关操作还需大家多加练习才能熟练掌握,四种数据容器各有千秋,希望大家以后可以根据情况选择合适的数据容器。

4️⃣往期回顾——温故知新🏆🏆🏆

🥇【Python零基础学习入门篇①】——第一节:基本语法与变量
🥈【Python零基础学习入门篇②】——第二节:Python的常用语句
🥉【Python零基础学习入门篇③】——第三节:Python的字符串类型
🏆2023年 团体程序设计天梯赛个人感悟及总结(附题解)——遗憾国三

5️⃣写在最后——暖心寄语💕💕💕

🍉🍉🍉不必偏执于未知的真实,身处的当下即是意义和真实,爱才是解题的答案,也是可画人生色彩的笔尖,耐心的走下去,总会遇到你爱的人和爱你的人。

🍁🍁🍁好啦,本文的内容就到此结束啦,我们下期再见哦!另外在祝各位小伙伴们要天天开心哦!
🍂🍂🍂如果你觉得本文对你有那么一丁点用亦或说有被触动到一点的话,还请你动动手指给个三连哦!因为我觉得这实在是,泰裤辣!
在这里插入图片描述

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

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

相关文章

SPSS如何进行均值比较和T检验之案例实训?

文章目录 0.引言1.均值过程2.单样本T检验3.独立样本T检验4.成对样本T检验 0.引言 因科研等多场景需要进行绘图处理&#xff0c;笔者对SPSS进行了学习&#xff0c;本文通过《SPSS统计分析从入门到精通》及其配套素材结合网上相关资料进行学习笔记总结&#xff0c;本文对均值比较…

Day5_创建mapper文件/编写查询语句sql

上一节主要介绍了springboot集成mybatis进行&#xff0c;以及后端开发思想。这一节主要编写sql映射文件&#xff0c;即真正的sql语句。实现增删改查用户数据&#xff0c;以及配置application.yml或者configuration文件实现控制台打印SQL语句。 接着上一节编写续写~~~~~~ 目录…

目标检测模型量化---用POT工具实现YOLOv5模型INT8量化

POT工具是什么 POT工具&#xff0c;全称&#xff1a;Post-training Optimization Tool&#xff0c;即训练后优化工具&#xff0c;主要功能是将YOLOv5 OpenVINO™ FP32 模型进行 INT8 量化&#xff0c;实现模型文件压缩&#xff0c;从而进一步提高模型推理性能。 不同于 Quantiz…

vim操作笔记

1. Vim普通模式指令 指令描述yy复制当前行y{n}y复制当前行起的后面 n 行p在当前行粘贴{n}p在当前行重复粘贴 n 次dd删除当前行d{n}d删除当前行起的后面 n 行x剪切当前光标的字符X剪切当前光标的前一个字符r{char}替换一个字符R不定长替换yw复制一个词dw删除一个词&#xff08;…

【GAMES101】03 Transformation

2D线性变换 ——写成矩阵形式 1、Scale&#xff08;缩放&#xff09; 2、Reflection Matrix&#xff08;反射矩阵&#xff09; 3、Shear Matrix&#xff08;剪切矩阵&#xff09; 4、Rotation Matrix&#xff08;旋转矩阵&#xff09; 推导过程&#xff1a; 5、Translation Ma…

第十四届蓝桥杯大赛软件赛省赛(Java 大学B组)

目录 试题 A. 阶乘求和1.题目描述2.解题思路3.模板代码 试题 B.幸运数字1.题目描述2.解题思路3.模板代码 试题 C.数组分割1.题目描述2.解题思路3.模板代码 试题 D.矩形总面积1.问题描述2.解题思路3.模板代码 试题 E.蜗牛1.问题描述2.解题思路3.模板代码 试题 F.合并区域1.题目描…

Vue2加载倾斜摄影

vue3项目加载倾斜摄影 vue3项目加载倾斜摄影的教程可见此人的教程&#xff0c;亲测可用 https://blog.csdn.net/qq_37750030/article/details/124680036 vue2项目加载倾斜摄影 可是为什么到了vue2的老项目里面用不了呢&#xff1f; 原因在于这几个库&#xff0c;全是ts的&…

只出现一次(N次)的数字 / 出现次数最多的数字 / 数组中数字出现的次数

一.题目类型简介 数组中数字出现的次数是一类经典的问题&#xff0c;通常让我们求数组中数字出现的次数及其衍生的问题&#xff0c;比如&#xff0c;只出现一次的数字&#xff0c;只出现两次的数字&#xff0c;在一个数组中只有一个数字出现一次&#xff0c;其他出现两次或者三…

基于FPGA+JESD204B 时钟双通道 6.4GSPS 高速数据采集模块设计(二)研究 JESD204B 链路建立与同步的过程

基于 JESD204B 的采集与数据接收电路设计 本章将围绕基于 JESD204B 高速数据传输接口的双通道高速数据采集实现展 开。首先&#xff0c;简介 JESD204B 协议、接口结构。然后&#xff0c;研究 JESD204B 链路建立与同 步的过程。其次&#xff0c;研究基于 JESD204B …

linux驱动开发 - 10_阻塞和非阻塞 IO

文章目录 1 阻塞和非阻塞 IO1.1 阻塞和非阻塞简介1.2 等待队列1、等待队列头2、等待队列项3、将队列项添加/移除等待队列头4、等待唤醒5、等待事件 1.3 Linux驱动下的poll操作函数 2 阻塞 IO 实验1、驱动程序编写2、编写测试 APP3、编译驱动程序和测试 APP4、运行测试 3 阻塞 I…

elform 动态 rules

一.使用v-for渲染时 前端由于某些需求场景需要&#xff0c;部分表单的渲染是通过 v-for循环渲染显示&#xff0c;此时如何实现表单验证呢&#xff1f;如下&#xff0c;点击第一行的号可以动态的增加更多行表单&#xff0c;不同于单一固定的表单行[参见下文一般情况下]&#xf…

book-riscv-rev1.pdf 翻译(自用)第一章 操作系统接口

Job of operating system: 操作系统使得多个程序分享一台计算机&#xff0c;提供一系列仅靠硬件无法支持的服务。 管理与抽象低级别硬件&#xff08;如&#xff1a;文件处理程序不需要关注使用哪种硬盘&#xff09;使得多个程序分享硬件&#xff08;programs that can run at…

【代码练习】旋转矩阵题解思路记录分析

题目 给你一幅由 N N 矩阵表示的图像&#xff0c;其中每个像素的大小为 4 字节。请你设计一种算法&#xff0c;将图像旋转 90 度。 不占用额外内存空间能否做到&#xff1f; 示例 1: 给定 matrix [ [1,2,3], [4,5,6], [7,8,9] ], 原地旋转输入矩阵&#xff0c;使其变为: [ [7…

【C语言】学习

文章目录 前言1. warm up1.1 输出helloworld1.2 示例1.3 C语言程序结构 前言 以后要学习操作系统深度学习了&#xff0c;所以C语言就不可缺少了。 1. warm up 1.1 输出helloworld #include<stdio.h> void main() {printf("Hello World!!"); }std 标准 io输…

JS案例分析-某国际音x-tt-params参数分析

今天我们要分析的网站是&#xff1a;https://www.tiktok.com/selenagomez?langen&#xff0c;参数名字叫x-tt-params。 先来抓个包 这个接口是用户视频列表url&#xff0c;参数叫x-tt-params&#xff0c;该接口中还有其他参数像msToken&#xff0c;X-Bogus&#xff0c; _sig…

Cartesi 2023 年 4 月回顾

查看你不想错过的更新 2023年5月1日&#xff0c;感谢Cartesi生态系统中所有了不起的构建者&#xff01; 在一个激动人心的旅程之后&#xff0c;我们的首届全球线上黑客马拉松正式结束了&#xff01;有超过200名注册建造者参加&#xff0c;见证了所有参与者展示的巨大才华和奉献…

【Android】串口通信的理论与使用教程

Android系统诞生这十几年以来&#xff0c;Android开发工程师岗位经历了由盛转衰的过程&#xff0c;目前纯UI的Android APP已经鲜有公司愿意花费巨资去开发&#xff0c;Android APP开发的业务也仅剩游戏、物联网&#xff08;Internet of Things&#xff0c;简称IoT&#xff09;等…

springcloud:新一代分布式定时任务框架——PowerJob

0. 引言 之前我们讲解过主流的分布式定时任务框架xxl-job&#xff0c;随着技术的迭代更新&#xff0c;更多的定时任务框架也开始出现&#xff0c;今天我们来看一看新一代的定时任务框架PowerJob 1. PowerJob简介 PowerJob是基于java开发的企业级的分布式任务调度平台&#x…

Java设计原则之单一职责原则、开闭原则、里氏代换原则

文章目录 面向对象设计原则概述 单一职责原则 开闭原则 里氏代换原则 面向对象设计原则概述 软件的可维护性&#xff08;Maintainability&#xff09;和可复用性&#xff08;Reusability&#xff09;是两个非常重要的用于衡量软件质量的属性&#xff0c;软件的可维护性是指软…

Ubuntu常用命令总结

目录 1&#xff09;安装包命令及下载包命令 2&#xff09;阅读协议内容 3&#xff09;执行sh文件&#xff1a; 4&#xff09;创建虚拟环境 5&#xff09;激活虚拟环境 6&#xff09;虚拟环境中安装包 7&#xff09;安装上传代码工具 8&#xff09;代码上传 9&#xff09…