关于go:golang是否具有相当于这个Python短路成语`z = x或y`


Does golang have the equivalent of this Python short circuit idiom `z = x or y`

在python中,z = x or y可以理解为assign z好像x是假的,那么y,else x,golang中有没有类似的习语?

具体来说,右边的两个变量是字符串,如果第一个变量不是emtpy,我想指定它,否则指定第二个变量。


不,您必须使用if/else:

1
2
3
4
5
6
7
8
s1, s2 :="","hello"
var x string

if s1 =="" {
    x = s2
} else {
    x = s1
}