64

Go で Python のように配列から複数の割り当てを行うエレガントな方法はありますか? これは、私がやろうとしていることの Python の例です (文字列を分割し、結果の配列を 2 つの変数に割り当てます)。

python:
>>> a, b = "foo;bar".split(";")

私の現在の解決策は次のとおりです。

x := strings.Split("foo;bar", ";")
a, b := x[0], x[1]

私はこれがいくつかの構造で乱雑になっているのを見ることができます。私が現在直面している実用的な例は、ブックマーク ファイルの解析とマップへの割り当てです。

bookmark := make(map[string]string)
x := strings.Split("foo\thttps://bar", "\t")
name, link := x[0], x[1]
bookmark[name] = link

今、私は役に立たない変数を持っていますx。私は次のようなことをしたいと思います:

bookmark := make(map[string]string)
name, line := strings.Split("foo\thttps://bar", "\t")
bookmark[name] = link

しかし、それは無効です。

4

3 に答える 3