了解函数中的快速代码元组复合

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

【讨论】:

以上是关于了解函数中的快速代码元组复合的主要内容,如果未能解决你的问题,请参考以下文章

了解 Python 语言中的时间处理

复合数据类型,英文词频统计

复合数据类型,英文词频统计

了解 Postgresql 中的 EXPLAIN 函数

pandas使用read_csv函数读取csv数据index_col参数指定作为行索引的数据列索引列表形成复合(多层)行索引loc基于行层索引元组和列层索引元组筛选dataframe数据

编译器原理了解一下?