Tag: 多个返回值

python是一个函数返回多个值吗?

在Python中,你可以有一个函数返回多个值。 这是一个人为的例子: def divide(x, y): quotient = x/y remainder = x % y return quotient, remainder (q, r) = divide(22, 7) 这看起来很有用,但看起来也可能被滥用(“Well..function X已经计算了我们需要的中间值,让我们让X返回值)”。 什么时候应该画线并定义一个不同的方法?

在Golang的正常function中返回像“ok”的地图

在Go中,下面的工作(注意一个使用地图有一个返回,另一个有两个返回) package main import "fmt" var someMap = map[string]string { "some key": "hello" } func main() { if value, ok := someMap["some key"]; ok { fmt.Println(value) } value := someMap["some key"] fmt.Println(value) } 但是,我不知道如何用我自己的function做同样的事情。 是否有可能具有类似的行为与可选返回像map ? 例如: package main import "fmt" func Hello() (string, bool) { return "hello", true } func main() { if value, […]

Go:单值上下文中的多个值

由于Go中的error handling,我经常会得到多个值函数。 到目前为止,我pipe理这个的方式非常混乱,我正在寻找最佳实践来编写更简洁的代码。 假设我有以下function: type Item struct { Value int Name string } func Get(value int) (Item, error) { // some code return item, nil } 我怎样才能优雅地分配一个新的variablesitem.Value 。 在介绍error handling之前,我的函数只是返回item ,我可以简单地这样做: val := Get(1).Value 现在我这样做: item, _ := Get(1) val := item.Value 没有办法直接访问第一个返回的variables? 非常感谢