Python では、split メソッドを使用すると、文字列を分割してそのコンポーネントを変数に割り当てるのが簡単です。ただし、Go では、同様のアプローチを試みると、割り当て数の不一致により失敗するようです。
文字列を効果的に分割し、その値を割り当てるにはどうすればよいですか? Go で 1 回の操作で複数の変数に値を追加できますか?
2 つの方法があります。アプローチ:
2 段階アプローチ:
このメソッドでは、最初に strings.Split を使用して文字列を分割し、次に結果のスライス要素を変数に割り当てます:
package main import ( "fmt" "strings" ) func main() { s := strings.Split("127.0.0.1:5432", ":") ip, port := s[0], s[1] fmt.Println(ip, port) }
を使用したワンステップ アプローチnet.SplitHostPort:
Go は、ネットワーク アドレスを表す文字列をホスト コンポーネントとポート コンポーネントに分割するために特別に設計された組み込み関数 net.SplitHostPort を提供します:
package main import ( "fmt" "net" ) func main() { host, port, err := net.SplitHostPort("127.0.0.1:5432") fmt.Println(host, port, err) }
以上がGo で文字列を効率的に分割して変数を割り当てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。