golang與python的不同有:
主要是在語法方面。
1.golang可讀性很強,與或對應&&, ||這也使得golang看起來更像傳統程式語言,而不是python的or,and。
2.很難修改字串,需要的話就重排吧。
3.字串經常需要在string和[]byte之間來回轉換,數字轉字串必須用strconv。
4.if,else,elif必須和配對的 { 在同一行。
5.無時無刻不在使用自訂的struct,初始化結構體要用,json轉成資料結構也要用,如果json轉成的是複合結構還要嵌套struct,很
多時候strcut來當python中的map用。
6.定義type test struct,想得到一個test的數組,要用[]*test,而不是[]test。
7.struct及其裡面的元素的首字母要大寫,不然很可能訪問不到。
8.golang的map比python難用多了,沒有dict.keys(),沒有dict.values(),想把map轉成別的結構只能遍歷map。
9.宣告並賦值使用:=。
10.沒有set,沒有tuples,要常使用slices。
11.沒有__getattr,要經常檢查是否存在。
12.引用的包,宣告的變數必須都的使用,不然編譯都無法通過。
13.陣列沒有[:-1]、[::-1]、a,b,c=[1,2,3]這些靈活的用法。
14.如果能確定函數回傳的類型,就不要用interface{},就算結構很複雜,也要使用strcut來傳回。如果回傳interface{},那麼
string(),for遍歷這些基礎用法都沒辦法使用了。
15.空指標是nil,python中的None在golang用nil代替,常常寫err != nil判斷是否出錯。
推薦教學:《go語言教學》
以上是golang與python有哪些不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!