Go 是否具有类似于 Python 的“if x in”结构?
技术问答
219 人阅读
|
0 人回复
|
2023-09-12
|
如果不如何遍历整个数组?x使用 Go检查数组是否存在?语言有结构吗?
/ L8 t) K& R# N像Python: if "x" in array: ...
6 J7 U; ~1 J7 v- L6 y& ?8 y * A6 e( m8 C5 S1 w( K$ ^/ O) e
解决方案: % X U: x6 B7 b; d
在 Go 没有内置的操作符可以做到这一点。您需要遍历数组。您可以编写您的函数来执行此操作,如下所示:
- t6 z0 T' k* e: A- e" T7 c6 x) g# ~func stringInSlice(a string,list []string) bool for _,b := range list if b == a return true return false}
; I {' c( j. m2 m9 N 如果您想在不通过整个列表的情况下检查成员资格,您需要使用映射而不是数组或切片,如下所示:. q, o' V0 V! `1 ]
visitedURL := map[string]bool "http://www.google.com": true, "https://paypal.com": true,}if visitedURL[thisSite] fmt.Println("Already been here.")}
% w0 w0 J3 q3 z7 Q l+ p# r6 T |
|
|
|
|
|