我正在使用 Golang 创建一个电报机器人,我需要一些关于如何从 Golang 中的函数检索多行字符串值的建议,它具有与此 Python 字符串相同的逻辑answer = """1 John 952 Sam 893 Mike 72"""我有一个创建 MongoDB 请求的函数,该请求为我获取 bson.M 数据类型的数据。之后,我需要使用这种形式将查询到的数据作为单个字符串值发送给用户:msg := tgbotapi.NewMessage( update.Message.Chat_ID, answer,)bot.Send(msg)我真的不知道如何将这个 bson.M 数据转换成一个多行字符串。我从函数中得到的 bson.M 响应:[map[_id:ObjectID("62a4acf2a494a2814238c6e1") bandMember:John name:School12 points:95] map[_id:ObjectID("62a4acf2a494a2814238c6e2") bandMember:Sam name:School15 points:89] map[_id:ObjectID("62a4acf2a494a2814238c6e3") bandMember:Mike name:School7 points:72]]我必须将它插入到“answer”的字符串变量中(见上例)
1 回答
翻阅古今
TA贡献1780条经验 获得超5个赞
遍历文档并为每个文档打印一行。用换行符连接行以获得最终结果。
var lines []string
for i, m := range data {
lines = append(lines, fmt.Sprintf("%d %s %d", i+1, m["bandMember"], m["points"]))
}
result := strings.Join(lines, "\n")
- 1 回答
- 0 关注
- 109 浏览
添加回答
举报
0/150
提交
取消