Go 語言學習筆記(Day 04)

2021-10-12 08:29:05 字數 2793 閱讀 8040

假定 a 值為 10,b 值為 20。

3.1.1 算數運算子

運算子描述例項+

相加a + b 輸出結果 30-相減

a - b 輸出結果 -10*相乘

a * b 輸出結果 200/相除

b / a 輸出結果 2%求餘

b % a 輸出結果 0

++自增

a++ 輸出結果 11

--自減

a-- 輸出結果 9

3.1.2 關係運算子

運算子描述

==檢查兩個值是否相等,如果相等返回 true 否則返回 false。

!=檢查兩個值是否不相等,如果不相等返回 true 否則返回 false。

>

檢查左邊值是否大於右邊值,如果是返回 true 否則返回 false。

<

檢查左邊值是否小於右邊值,如果是返回 true 否則返回 false。

>=

檢查左邊值是否大於等於右邊值,如果是返回 true 否則返回 false。

<=

檢查左邊值是否小於等於右邊值,如果是返回 true 否則返回 false。

3.1.3 邏輯運算子

運算子描述

&&邏輯 and 運算子。 如果兩邊的運算元都是 true,則條件 true,否則為 false。

| |邏輯 or 運算子。 如果兩邊的運算元有乙個 true,則條件 true,否則為 false。

!邏輯 not 運算子。 如果條件為 true,則邏輯 not 條件 false,否則為 true。

3.1.4 位運算子,假定 a 為60,b 為13

運算子描述

&按位與運算子"&"是雙目運算子。 其功能是參與運算的兩數各對應的二進位相與。

|按位或運算子"|"是雙目運算子。 其功能是參與運算的兩數各對應的二進位相或

^按位異或運算子"^"是雙目運算子。 其功能是參與運算的兩數各對應的二進位相異或,當兩對應的二進位相異時,結果為1。

<<

左移運算子"<<"是雙目運算子。左移n位就是乘以2的n次方。 其功能把"<<"左邊的運算數的各二進位全部左移若干位,由"<<"右邊的數指定移動的位數,高位丟棄,低位補0。

>>

右移運算子">>"是雙目運算子。右移n位就是除以2的n次方。 其功能是把">>"左邊的運算數的各二進位全部右移若干位,">>"右邊的數指定移動的位數。

3.1.5 賦值運算子

運算子描述例項=

簡單的賦值運算子,將乙個表示式的值賦給乙個左值

c = a + b 將 a + b 表示式結果賦值給 c

+=相加後再賦值

c += a 等於 c = c + a

-=相減後再賦值

c -= a 等於 c = c - a

*=相乘後再賦值

c *= a 等於 c = c * a

/=相除後再賦值

c /= a 等於 c = c / a

%=求餘後再賦值

c %= a 等於 c = c % a

<<=

左移後賦值

c <<= 2 等於 c = c << 2

>>=

右移後賦值

c >>= 2 等於 c = c >> 2

&=按位與後賦值

c &= 2 等於 c = c & 2

^=按位異或後賦值

c ^= 2 等於 c = c ^ 2

=按位或後賦值 c

3.1.6 其他運算子

運算子描述例項&

返回變數儲存位址

&a; 將給出變數的實際位址。

*指標變數

*a; 是乙個指標變數

3.1.7 優先順序

優先順序運算子

5* / % << >> & &^

4+ - | ^

3== != < <= > >=2&&

1||3.2.1 條件語句

指定乙個或多個條件,並通過測試條件是否為 true 來決定是否執行指定語句,並在條件為 false 的情況在執行另外的語句。

3.2.1.1 if語句

3.2.1.2 switch語句

switch x.(type)
解釋:從第乙個判斷表示式為 true 的 case 開始執行,如果 case 帶有 fallthrough,程式會繼續執行下一條 case,且它不會去判斷下乙個 case 的表示式是否為 true。

支援多條件匹配

不同的 case 之間不使用 break 分隔,預設只會執行乙個 case

如果想要執行多個 case,需要使用 fallthrough 關鍵字,也可用 break 終止

3.2.1.3 select語句

select
3.2.3 迴圈語句

3.2.3.1 for迴圈

for init; condition; post  //for

for condition //while

for {}

init: 一般為賦值表示式,給控制變數賦初值;

condition: 關係表示式或邏輯表示式,迴圈控制條件;

post: 一般為賦值表示式,給控制變數增量或減量。

for 迴圈的 range 格式可以對 slice、map、陣列、字串等進行迭代迴圈:

for key, value := range oldmap 

statement(s);

}

3.2.3.2 迴圈控制語句

break語句:

goto:無條件轉移到過程中指定行,與條件語句配合,實現條件轉移、構成迴圈、跳出迴圈體等(不建議用,造成混亂)

爬蟲學習筆記day04

3.步驟 1.獲取貼吧主頁url 查詢引數 2.xpath 提取頁面中所有帖子的url src 完整的鏈結 href 需要和主url進行拼接 p 5020551987 校花吧 self.url xpath div div a class j th tit href 3.匹配乙個帖子中所有的url 校...

前端學習 Day04

css cascading style sheet 層疊樣式表1.標籤 之類的標籤 使用方式 直接輸入標籤名 2.類 class class名字 使用方式 輸入點 class名 3.id id 名 使用方式 輸入 id名 一般來說我們寫css檔案的時候用的是第二種選擇器,class名 這是因為id名...

標準C語言day04

陣列 什麼是陣列 變數的組合,是一種批量定義變數的方式。定義 型別 陣列名 數量 int arr 5 使用 陣列名 下標 下標 從零開始,範圍 0 數量 1。遍歷 與for迴圈配合,使用迴圈變數i當作陣列的下標。初始化 型別 陣列名 數量 1 陣列與普通變數一樣預設值是隨機的,為了安全要對進行初始化...