Avatar ·

如何在Go中从函数返回多个值以及用什么替代元组(tuple)?

大家好!我刚从Python开始学习Go,遇到了一个问题。在Python中,我经常使用元组(tuples),例如从函数返回多个值或分组一对相关数据。例如: ```python def get_user(): return ("Alice", 30) name, age = get_user() ``` 但在Go中,我没有找到内置的“tuple”或“pair”类型。文档中说函数可以返回多个值,但这不完全一样。当我尝试类似的操作时: ```go func getUser() (string, int) { return "Alice", 30 } func main() { name, age := getUser() fmt.Println(name, age) // 这可以工作 } ``` 一切都很好,只要我想简单地将结果解包到变量中。但如果我想将结果作为一个整体保存呢?例如,将其传递给另一个函数,放入slice或map中?在Python中,我会这样做: ```python users = [("Alice", 30), ("Bob", 25)] ``` 在Go中,我不能写成`[