Swift 元组(Tuple)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift 元组(Tuple)相关的知识,希望对你有一定的参考价值。
参考技术A 元组类型,用于在单个复合值中对多个值进行分组元组中的值可以是任何类型,并且不需要是相同类型
声明:
元组声明的 语法
方式1: 最简单的元组,就是在圆括号中,用逗号分隔的一组值
是一个具有两个值的元组,一个元素是整数类型,另一个元素是字符串类型(这是一个合法的数据)
方式2 :可以在声明时命名元组的变量,也可以使用它们的名称来调用
数组和字典组合
取值
方式1:使用下标
方式2:使用元素名称
方式3:拆分成常量/变量
应用:
1、作为函数参数
2、作为函数返回值
总结:
元组 优点:
1、元组可以同时存储多种类型元素,且元素类型固定,以保数据安全,除非你定义数据类型为Any。编译器会对赋值参数类型进行检查
2、元组的元素个数固定,不允许增加、删除,编译器会严格校验赋值参数个数
3、无需定义key,但是必要时可以为数据命名,方便数据访问
4、适合同时遍历多元数据
元组 缺点 :
1、不适合存储大量数据,因为元组不支持append、remove等方法
2、考虑到工程实际情况,后段使用的语言可能不支持元组,需要转换为其他格式
元组适合应用于组合少量的多元的数据,与数组、字典结合使用可以产生强大威力
Tuple(元组)
Tuple(元组)
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号(())里,元素之间用逗号隔开。
元组中的元素类型也可以不相同:
#!/usr/bin/python3
tuple = ( ‘abcd‘, 786 , 2.23, ‘runoob‘, 70.2 )
tinytuple = (123, ‘runoob‘)
print (tuple) # 输出完整元组
print (tuple[0]) # 输出元组的第一个元素
print (tuple[1:3]) # 输出从第二个元素开始到第三个元素
print (tuple[2:]) # 输出从第三个元素开始的所有元素
print (tinytuple * 2) # 输出两次元组
print (tuple + tinytuple) # 连接元组
以上实例输出结果:
(‘abcd‘, 786, 2.23, ‘runoob‘, 70.2)
abcd
(786, 2.23)
(2.23, ‘runoob‘, 70.2)
(123, ‘runoob‘, 123, ‘runoob‘)
(‘abcd‘, 786, 2.23, ‘runoob‘, 70.2, 123, ‘runoob‘)
元组与字符串类似,可以被索引且下标索引从0开始,-1 为从末尾开始的位置。也可以进行截取(看上面,这里不再赘述)。
其实,可以把字符串看作一种特殊的元组。
>>> tup = (1, 2, 3, 4, 5, 6)
>>> print(tup[0])
1
>>> print(tup[1:5])
(2, 3, 4, 5)
>>> tup[0] = 11 # 修改元组元素的操作是非法的
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: ‘tuple‘ object does not support item assignment
>>>
虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表。
构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则:
tup1 = () # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号
string、list和tuple都属于sequence(序列)
注意:
- 1、与字符串一样,元组的元素不能修改。
- 2、元组也可以被索引和切片,方法一样。
- 3、注意构造包含0或1个元素的元组的特殊语法规则。
- 4、元组也可以使用+操作符进行拼接。
以上是关于Swift 元组(Tuple)的主要内容,如果未能解决你的问题,请参考以下文章