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
相关产品推荐
相关产品推荐

