元组及其内置方法
一:基本使用:tuple
1 用途:记录多个值,当多个值没有改的需求,此时用元组更合适
2 定义方式:在()内用逗号分隔开多个任意类型的值,这些值都为可迭代对象
t=(1,1.3,'xx',('a','b'),[1,2]) #t=tuple((1,1.3,'xx',('a','b'),[1,2]))
print(t,type(t))
二:常用操作+内置的方法
优先掌握的操作:
1、按索引取值(正向取+反向取):只能取
t=('egon',123,['a','b'])
print((t[0]))
取一个值:print((‘egon’, ))
2、切片(顾头不顾尾,步长)
t=(1,2,3,4,5)
print(t[0:3])
3 长度(item元素个数)
print(len(t))
4、成员运算in和not in
5、循环
for item in ('a','b','c'):
print(item)
6.需要掌握的操作
t=('a','b','c','a')
print(t.count('a'))
print(t.index('a',1,10))
print(t.index('xxx',1,10)) #不存在,报错
三:该类型总结
1 存多个值
2 有序
3 不可变(内部可以包含可变对象,比如列表中的中的值)
应用场景:将不允许操作的列表可以转化为元组,将允许操作的元组转化为列表
案例一
提前拥有一个老师列表,打算开除,如果是校长亲友团,免开
# 原始列表为list类型
# 手动输入是否是亲友团,决定是否能开除()
teas = ['Bob', 'Alex']
friends = input("亲友团[0, 1]:")
if friends == '1':
teas = tuple(teas)
# => 异常处理
# 判断teas对象是否是tuple类型
if not isinstance(teas, tuple): # 老师是否是亲友团,不是就开除
teas.clear()
for t in teas:
print("在职老师:%s" % t)
案例二
元组中的数据一定不能改变,但是元组中的数据(可变类型)的数据可以改变
t1 = (1, 2, "abc", True, (1, 2)) # t1永远无法改变
t2 = (1, 2, [])
print(t2, type(t2), id(t2), id(t2[2]))
t2[2].extend((10, 20))
print(t2, type(t2), id(t2), id(t2[2]))
#
(1, 2, []) <class 'tuple'> 9312456 42177280
(1, 2, [10, 20]) <class 'tuple'> 9312456 42177280
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 基于 Nginx + PHP-FPM 作为 HTTP 服务器
- 玩转 PhpStorm 系列(五):代码模板篇
- 通过 PDO 扩展与 MySQL 数据库交互(上)
- 通过 PDO 扩展与 MySQL 数据库交互(下)
- 使用 Vue 3.0,你可能不再需要Vuex了
- 浅析小程序云原生数据库设计与应用
- 实战丨用云开发快速构建信息申报小程序
- Linux gdb使用基础
- redis设置过期时间
- Linux gcc使用基础
- TensorFlow-平面曲线拟合
- TensorFlow-VGG16模型复现
- 腾讯云语音识别之实时语音识别
- React + Dva + Antd+umi 实践
- 重新构建711的Android项目(一),巧妙的小屏菜单查询框架实现