python常用数据结构元组详解
作者:小han的日常 发布时间:2022-08-14 08:14:44
标签:python,数据,结构,元组
Tuple 元组
元组的定义和使用
元组的定义:
元组是有序的不可变对象集合
元组使用小括号包围,各个对象之间使用逗号分隔
元组是异构的,可以包含多种数据类型
元组使用:创建
创建:
--使用逗号分隔
--通过小括号填充元素
--通过构造方法tuple(iterable)-----iterable:可迭代对象
--注意:单元素元组,逗号不可或缺
# 元组使用:创建
# 1、直接使用逗号分隔
a = 1, 2, 3
print(type(a))
# 2、通过小括号填充元素
b = (1, 2, 3)
print(type(b))
# 3、通过构造方法tuple(iterable)
c = tuple([1, 2, 3])
print(type(c))
# 注意:单元素元组,逗号不可或缺
d = 1,
print(type(d))
元组使用:索引
索引:可以通过索引值来访问对应的元素
正向索引:默认编号从0开始
反向索引:默认编号从-1开始
# 元组使用:索引
# 索引:可以通过索引值来访问对应的元素
# 正向索引:默认编号从0开始
# 反向索引:默认编号从-1开始
a = (1, 2, 3, 4, 5)
print(a[1])
print(a[-2])
元组使用:切片
切片[start:stop:step]
--三个值都是可选的,非必填
--start值:指示开始索引值,如果没有指定,则默认开始值为0;
--stop值:指示到哪个索引值结束,但不包括这个结束索引值。如果没有指定,则取列表允许的最大索引值;
--step值:步长值指示每一步大小,如果没有指定,则默认步长值为1.
# 切片[start:stop:step]
# --三个值都是可选的,非必填
# --start值:指示开始索引值,如果没有指定,则默认开始值为0;
# --stop值:指示到哪个索引值结束,但不包括这个结束索引值。如果没有指定,则取列表允许的最大索引值;
# --step值:步长值指示每一步大小,如果没有指定,则默认步长值为1.
a = (1, 2, 3, 4, 5)
print(a[::])
print(a[1:4])
print(a[1:4:2])
元组常用方法
index(item)
--返回与目标元素相匹配的首个元素的索引。
--目标必须在元组中存在的,否则会报错。
# index(item)
# --返回与目标元素相匹配的首个元素的索引。
# --目标必须在元组中存在的,否则会报错。
a = (1, 2, 5, 6, 3, 2)
print(a.index(2))
count(item):返回某个元素出现的次数
入参:对象item
返回:次数
# count(item):返回某个元素出现的次数
# 入参:对象item
# 返回:次数
a = ('happy')
print(a.count("p"))
元组解包
元组解包:把一个可迭代对象里的元素,一并赋值到由对应的变量组成的元组中
# 元组解包
# 元组解包:把一个可迭代对象里的元素,一并赋值到由对应的变量组成的元组中
a = (1, 3, 2)
b, c, d = a
print(b)
print(c)
print(d)
元组与列表
相同点
--都是有序的;
--都是异构的,能够包含不同类型的对象;
--都支持索引和切片;
区别
--声明方式不同,元组使用().列表使用[];
--列表是可变的,元组是不可变的;
来源:https://blog.csdn.net/weixin_50464533/article/details/126489795


猜你喜欢
- 背景:pony是公司的首席体验官、首席产品经理。这次在产品峰会上pony将自己平时经验的积累与大家交流,体验较细。这次分享研发管理部,设计中
- batch的lstm# 导入相应的包import torchimport torch.nn as nnimport torch.nn.fun
- 楔子Python 有一个第三方模块叫 psutil,专门用来获取操作系统以及硬件相关的信息,比如:CPU、磁盘、网络、内存等等。下面来看一下
- 在做Django项目的过程中, 无法进入pycharm提供的Run manager.py Task交互环境出现这种问题是因为Pycharm无
- 现在获取数组中最大最小值用的越来越多了,于是乎我编了个方法供大家使用。代码如下,若有问题可以与我联系,咱们一起学习一起进步。我们来看下示例一
- 本文介绍Python中的线程同步对象,主要涉及 thread 和 threading 模块。threading 模块提供的线程同步原语包括:
- 由于工作的需求,需要用python做一个类似网络爬虫的采集器。虽然Python的urllib模块提供更加方便简洁操作,但是涉及到一些底层的需
- 只是做笔记,没什么!! --创建测试表 CREATE TABLE [dbo].[Student]( [ID] [int] IDENTITY(
- 调试程序的过程中,发现通过os.path.join拼接的路径出现了反斜杠directory1='/opt/apps/upgradeP
- 前言最近工作中遇到一个需求,是根据用户连续记录天数来计算的,求出用户在一段时间内最大的连续记录时间,例如在 2016-01-01 和 201
- 在程序中定义一个变量时,这个变量是有作用范围的,变量的作用范围被称为它的作用域。根据定义变量的位置,变量分为两种:局部变量:在函数中定义的变
- 一、所用知识点:1. for循环与if判断的结合2. %s占位符的使用3. 辅助标志的使用(标志位)4. break的使用二、代码示例:
- CI框架自带的zip类简单实用,本文就来简单说一下CI框架的zip类的使用。首先需要导入zip类:$this->load->(&
- 最近在着手支付宝个人版改版的项目,正好在一些国内知名的SNS网站上分别注册了帐户进行体验。显然一点,国内的SNS都带有Facebook的影子
- 在python中,通过导入random库,就能使用randint 和 randrange这两个方法来产生随机整数。那这两个方法的区别在于什么
- 本文实例讲述了Python3.5实现的 * 菜单功能。分享给大家供大家参考,具体如下:程序: * 菜单要求:
- 介绍 IIRF是一款开源的重写URL过滤器,类似于Apache的URL重写,基于VC8.0(可以用Visual Studio200
- 一、简介简单记录一下存储过程的使用。存储过程是预编译SQL语句集合,也可以包含一些逻辑语句,而且当第一次调用存储过程时,被调用的存储过程会放
- 前言: 在项目中,我用到了vue +iview + vue-router 开发; 然后导航条就使用了iview的Menu组件,结果发觉导航条
- 由于DOM(文档对象模型)概念的推出,这个API使HTML如虎添翼,但是有些学DHTML的朋友还是有些困挠,只是因为目前的手册的书写不太科学