了解函数中的快速代码元组复合
Posted
技术标签:
【中文标题】了解函数中的快速代码元组复合【英文标题】:Understanding swift code tuple compound in a function 【发布时间】:2016-07-10 15:55:20 【问题描述】:我刚从“Swift 编程语言(Swift 3 beta)”开始学习 swift。我遇到了一个具有元组返回类型的函数。他们还没有完全解释清楚。这里 func "calculateStatistics" 接受 Int 类型的 "score" 数组,它具有元组复合作为返回类型。现在到底当他们用print语句调用它时,我不明白,“print(statistics.2)”语句是什么意思。 “.2”是什么意思以及如何计算。
func calculateStatistics(scores : [Int]) -> (min: Int , max: Int , sum: Int)
var min = scores[0]
var max = scores[0]
var sum = 0
for score in scores
if score > max
max = score
else if score < min
min = score
sum += score
return (min, max, sum)
let statistics = calculateStatistics([5 , 3, 100, 3, 9])
print (statistics.sum)
print (statistics.2)
【问题讨论】:
【参考方案1】:元组类似于简单的结构,在该示例中,您有一个具有 3 个元素的“结构”,statistics.2
指的是元组的第三个元素 sum(索引从 0 开始)。
由于该函数还为各个元素定义了名称,因此statistic.sum
也可以使用。
【讨论】:
【参考方案2】:swift 中的元组,以逗号分隔的类型列表括在括号中,通常用于返回多个值。我们可以用点表示法得到结果。它被称为 javascript 对象和数组的混搭,例如 foo= (0, int, bool)。该函数运行并且在总和上,它将始终运行并将未显示的值和最大最小值相加,因为唯一的总和正在获取。最小值为 3,最大值为 100。在索引 2 上,我们得到 100。总和为 108
【讨论】:
以上是关于了解函数中的快速代码元组复合的主要内容,如果未能解决你的问题,请参考以下文章
pandas使用read_csv函数读取csv数据index_col参数指定作为行索引的数据列索引列表形成复合(多层)行索引loc基于行层索引元组和列层索引元组筛选dataframe数据