【python入门篇】元组、字典和集合(3)

news2024/11/27 11:42:47

      先来介绍下这三种数据类型,第一个:元组(tuple)是 python中另一个重要的序列结构,和列表类似,元组也是由一系列按特定顺序排序的元素组成。第二个:python 字典(dict)是一种无序的、可变的序列,它的元素以“键值对(key-value)”的形式存储。第三:集合(set)是一个无序集合,没有重复元素。简单介绍完这三种数据类型,那么接下来就进入本章节的学习。

一、环境配置

我这边python的环境是3.7.8版本的,官方下载路径如下:

1.python 3.7.8  

可直接进入官网下载安装:Download Python | Python.org

2.编译器选择的是spyder,可以通过pip接口进行安装:

 
pip install wheel
 
 
pip install PyQt5
 
 
pip install spyder

二、元组的详解

那么我们知道了元组(tuple)是Python中一种内置的存储有序数据的结构,我们先来看一下如何创建元组。

1.元组的创建

Python 提供了两种创建元组的方法,我们先来看看第一种方法

1.1 使用()创建元组

语法:

tuple_name = ('元素1','元素2','元素3',....)

说明:

tuple_name 表示变量名,元素1 ~ 元素... 表示元组的元素

我们用()来创建几组元组,并打印出来:


tuple_name = ('元素1','元素2','元素3')
company = ('研发','测试','人事')
Class = ('小明','小黄','小黑')

print(tuple_name)
print(company)
print(Class)

输出:

有一点需要注意的就是,当创建的元组中只有一个字符串类型的元素时,该元素后面必须要加一个逗号,,否则 Python 解释器会将它视为字符串,如:

tuple_name1  = ('元素1')

type(tuple_name1)

输出:

1.2 使用tuple()函数创建元组

语法:

tuple(data)

说明:

data 表示可以转化为元组的数据,包括字符串、元组、range 对象等..

我们用tuple()来创建几组元组,并打印出来:

data1 = tuple('python')   ###将字符串转换为元组

list1 = ['python','c','c++']
tuple(list1)          ###将列表转换为元组


print(data1)
print(list1)

输出:

包括后面要学习的字典也可以转换为元组。

2.元组的访问

元组的访问和列表一样,也是可以通过索引的方式获取元组中的某个元素。

例如:

data1 = tuple('python')

print(data1)

data1[1]   ###索引,从0开始

data1[0:3]   ##切片索引0~3

输出:

3.元组的修改

我们可以通过对元组的变量重新赋值来修改元组:

data1 = tuple('python')

data1 = tuple('c++')

print(data1)

输出:

还可以通过拼接的方式来修改元组:

data1 = tuple('python')

data2 = tuple('c++')

data3 = data1+data2

print(data3)

输出:

4.元组的删除

很简单,直接使用del 删除元组就可以了

data1 = tuple('python')

del data1

print(data1)

输出:

三、字典的详解

Python字典是另一种可变容器模型,可存储任意类型对象。

1.字典的创建

我们通常使用以下两种方法来进行字典的创建。先看看第一种

1.1 使用{}来创建字典

由于字典中每个元素都包含两部分,分别是键(key)和值(value),因此在创建字典时,键和值之间使用冒号:分隔,相邻元素之间使用逗号,分隔,所有元素放在大括号{ }中。

语法:

dict_name = {'key':'value1', 'key2':'value2', ...}

说明:

dict_name 表示字典变量名,key : value表示各个元素的键值对。

我们用{}来创建几组字典,并打印出来:

dict1 = {'name':'小明','age':'30','sex':'男'}

print(dict1)

输出:

1.2 通过 dict()函数创建字典

dict1 = dict((('name', '小明'),))

print(dict1)

输出:

2.字典的访问

这边推荐使用get()函数来获取指定键对应的值。

例如:

我们想要获取字典里面的age键对应的值

dict1 = {'name':'小明','age':'30','sex':'男'}

dict1.get('age')

输出:

3.字典的删除

同元组一样,我们也是使用del方法删除。

dict1 = {'name':'小明','age':'30','sex':'男'}

del dict1

print(dict1)

输出:

四、集合

Python中的集合(set)与数学中的集合概念类似,也是用于保存不重复的元素。它有可变集合(set)和不可变集合(frozenset)两种。set 类型集合可以做添加、删除元素的操作,而 forzenset 类型集合不行。这节主要讲set 类型集合。

1.创建set集合

语法:

set_name = {元素1,元素2,...}

1.1通过{}创建集合:

set1 = {'小明',30,(1,2,3)}

print(set1)

type(set1)

输出:

1.2 set()函数创建集合

set1 = set('小明')

set2 = set((1,2,3,4))

print(set1)

print(set2)

输出:

如果要创建空集合,只能使用 set() 函数实现。

2.集合的访问

集合的元素是无序的,一般我们使用循环结构获取。

set1 = {'小明',30,(1,2,3)}

for i in set1:
    print(i)

输出:

循环结构的使用,后面的章节会讲解,可以先了解下。

3.集合的删除

还是使用del的方法进行删除

set1 = {'小明',30,(1,2,3)}

del set1

print(set1)

输出:

五、练习题

1.执行下面代码,输出为?

A.{'name':'小明','age':'30','sex':'男'}   B.('name', 'age', 'sex')  C.('小明', '30', '男')   D.以上选项都不对

2.执行下面代码,输出为?

A.女            B.小明        C.30     D.男

六、总结

这一章节说的内容可能比较多,可以自己多动手试一试,后续来学习下循环结构的使用,谢谢。

@Neng

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

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

相关文章

AIGC|数字时代巨变,创新潮流涌现,万亿市值风口已开!

“2021年至2023年7月期间,AIGC赛道共发生280笔投融资,展现了其高热度与高成长性。在获投的应用与模型层创业项目中,文本、影像、语音平分秋色。”艾瑞咨询在其《2023年中国AIGC产业全景报告》披露国内AIGC的最新投融资情况,这让我…

关于IOC与IOA的学习

[TOC]IOC与IOA学习 IoC 和 IoA:两者有什么区别? IoC 和 IoA 可通过以下四种简单的方法进行区分: 具体工具与动机: IoC 专注于攻击者为实现其意图而使用的特定文件和采取的行动,而 IoA 则专注于这些意图本身。IoC 关…

QT 串口编程 QSerialPort

//创建串口对象QSerialPort s new QSerialPort("/dev/ttySAC2", this);//配置串口信息s->setBaudRate(QSerialPort::Baud9600);//波特率s->setDataBits(QSerialPort::Data8);//数据位s->setStopBits(QSerialPort::OneStop);//奇偶校验s->setParity(QSer…

《向量数据库指南》——Milvus Cloud向量数据库的优势

大禹智库: 随着大模型的爆火,向量数据库也越发成为开发者关注的焦点。为了方便大家更好地了解向量数据库,我们特地推出了《Hello, VectorDB》系列,本文将从宏观角度、向量数据库与其他算法库的区别、技术难点及如何选择向量数据库等方面,带大家认识真正的向量数据库。 在…

simulink创建全局变量MATLAB function引用

matlab版本:2022a 在库浏览器中找到Data Store Memory并放置 双击打开Data Store Memory模块设置变量名 在信号属性中设置初始值、数据类型和信号类型,数据类型和信号类型不能为auto 在记录中勾选“记录数据存储数据” 打开引用该变量的MATLAB function模…

数字时代,VR虚拟展会打造全渠道同步营销新模式

随着经济的快速发展,VR虚拟展会逐步完善,对线下实体展会也产生了重大的影响,在这个数字化时代,展会展览也需要寻找新的表达方式,VR虚拟展会以一种全新的魅力吸引越来越多的观展者。 传统展厅的局限性; 1、…

更新 | 持续开源迅为RK3568驱动指南-驱动基础进阶篇

《iTOP-RK3568开发板驱动开发指南》更新,本次更新内容对应的是驱动(第一期_驱动基础-进阶篇)视频,后续资料会不断更新,不断完善,帮助用户快速入门,大大提升研发速度。 文档教程更新至驱动基础进…

安捷伦N8482A射频传感器6GHz

安捷伦N8482A射频传感器 N8482A 是 Agilent 使用的 6 GHz 0.1 瓦射频传感器。电子测试设备传感器测量波形的功率,例如多音和调制射频 (RF) 波形。传感器使用二极管检测器收集高度精确的调制测量值。 用于存储校准系数的 EEPROM 消除了手动输入 100 kHz 至 6 GHz 的宽…

java-范型

java—范型 泛型在java中有很重要的地位,无论是开源框架还是JDK源码都能看到它。 毫不夸张的说,泛型是通用设计上必不可少的元素,所以真正理解与正确使用泛型,是一门必修课。 1,范型概述 1,泛型本质 J…

linux中运行springboot jar包,内存占用多运行时报错

错误:Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000794500000, 576716800, 0) failed; 重启程序后过两天还会内存不够 通过top查询内存使用情况,发现占用物理内存1g 目前因为启动多个服务,每个服务默认分配…

sql优化常用

1、explain 输出执行计划 在select语句前加上explain就可以了(MySQL 5.6开始,不仅仅支持select )能够简单分析sql的执行情况,是否走索引等。 type列,连接类型。一个好的SQL语句至少要达到range级别。从最好到最差的连接类型为const、eq_reg、…

无线通信——Mesh体系结构

Mesh体系结构 了解Mesh的体系结构有利于我们后期的理解!这里有些简单的知识点以及解释 WMN:WMN就是无线mesh网络,我们一般提到WMN其实特指就是Mesh网络的整个体系结构 STA:客户工作站,这个东西就是用户的设备端&…

OAuth2 refreshToken时只获取到用户名的问题解决

1. grant_type为refresh_token时, authentication.getPrincipal()只获取到了字符串类型的用户名(这种情况下生成的access_token是没有权限的,访问不了正常的有权限校验的接口) , 跟踪源码发现 是 DefaultUserAuthenticationConverter#extractAuthentication中的userDetailsSer…

精密空调别再这样管理了,太麻烦啦!

在现代生活中,空调系统已经成为不可或缺的一部分,特别是在高温季节。然而,空调系统的有效性和效率对于节能、环保和用户舒适性至关重要。为了更好地满足这些需求,精密空调监控系统应运而生。 精密空调监控系统结合了先进的技术&am…

新版pycharm(2023.2.2)修改字体大小

下载了2023新版pycharm,想修改字体,发现找不到之前的setting入口,网上搜索也都是file-setting-editor这些,自己找了找,记录下 2023版pycharm的修改字体大小在file-Manage IDE Settings-Setting Sync… 里面&#xff0…

java幼儿园校园学习资源互助共享平台的设计springboot+vue

幼儿资源共享之家在设计之初也只是想弄个关于幼儿资源的一些物资交换系统,但是仅仅是作为一个进行二手交易类型的网站,用户粘性会出现问题,进而会导致产品可能不会达到预期,甚至开发的小黄鸭幼儿资源共享之家会无法良性生存下去。…

二叉树的最小深度(rust实现)

二叉树的最小深度 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 思路 这道题本质上是考察: 如何遍历二叉树理解什么是深度 对于这两点的考察&am…

再添殊荣!移远通信获评中国移动2023 年行业智能硬件库集团级金牌合作伙伴

10月12日下午, 2023中国移动全球合作伙伴大会政企论坛顺利举办。作为中国移动重要的合作伙伴,移远通信受邀参会,并凭借与中国移动在物联网领域长期、深入的合作,获评中国移动2023 年行业智能硬件库集团级金牌合作伙伴。移远通信副…

windows查看每个程序建立的TCP链接数量

首先以管理管权限打开powershell Set-ExecutionPolicy RemoteSigned然后运行脚本 脚本在文档最上方 就可以看到

windows系统使用软件异地同步数据(灾备)

Syncthing是一个开源文件同步工具,可以在多台设备之间实时同步文件或文件夹,官方网站:Syncthing 下载地址:Syncthing | Downloads ,一般推荐下载图形界面SyncTrayzor。 官方下载地址: https://github.c…