You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Golang:如何获取函数返回的首个值并赋值给指定变量

Go语言获取多返回值切片并赋值的实现方式

要把processes函数返回的切片赋值给PrintProcesses内的p变量,利用Go的多返回值接收特性即可实现,具体方案如下:

1. 标准实现(包含错误处理)

生产代码中必须处理错误,避免隐藏问题,完整代码如下:

import "fmt"

func PrintProcesses() {
    var p []ps.Process
    // 调用processes,同时接收切片和错误返回值
    processesSlice, err := processes()
    // 错误处理:调用失败时打印信息并终止函数
    if err != nil {
        fmt.Printf("获取进程列表失败: %v\n", err)
        return
    }
    // 将获取到的切片赋值给p
    p = processesSlice
    
    // 后续可对p进行业务操作,比如遍历打印进程信息
    for _, proc := range p {
        fmt.Printf("进程ID: %d, 名称: %s\n", proc.Pid(), proc.Name())
    }
}

2. 简化实现(忽略错误,仅用于测试场景)

如果是临时测试,可使用下划线_忽略错误返回值,但绝对不推荐在生产环境中使用:

func PrintProcesses() {
    var p []ps.Process
    // 忽略错误直接赋值
    p, _ = processes()
    
    // 后续操作...
}

注意事项

  • 需确保processes返回的[]Process与p的[]ps.Process为同一类型(比如Process是ps包导出的类型),若类型不一致则需要额外做类型转换。

内容的提问来源于stack exchange,提问作者Felipe Olaya Ospina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 11:10:33