2.1 計算機會算術(shù)
2.1.1 數(shù)值運算
運算符:在需要進行運算的兩個數(shù)值之間使用。
加法:+
減法 :-
乘法:*
除法:/
乘方:**
求余數(shù):%
- 字符串能進行加法運算、與整數(shù)進行乘法運算。
2.1.2 邏輯運算
與 :and 在需要進行判斷的兩個布爾值之間使用。
或:or 在需要進行判斷的兩個布爾值之間使用。
非:not 在需要進行判斷的布爾值前使用。
2.1.3 判斷表達式
判斷表達符:在需要進行判斷的兩個值之間使用。
等于:==
不等于 :!=
小于:<
小于或等于:<=
大于:>
大于等于:>=
2.1.4 運算優(yōu)先級
由先到后:
乘方:**
乘除:* /
加減:+ -
判斷:== >>= <<=
邏輯:! and or
- 如果是相同優(yōu)先級的運算符,那么Python會按照從左向右的順序進行運算。
- 如果有優(yōu)先級高的運算符,Python會打破從左向右的默認次序,先執(zhí)行優(yōu)先級高的運算。
- 如果有括號存在,會先進行括號中的運算。
2.2 計算機記性好
2.2.1 變量革命
- 用內(nèi)存地址來為存儲的地址建索引的缺點:
- 內(nèi)存地址相當(dāng)冗長,難以記憶。
- 每個地址對應(yīng)的存儲空間大小固定,難以適應(yīng)類型多變。
的數(shù)據(jù)。 - 對某個地址進行操作前,并不知道該地址的存儲空間是否已經(jīng)被占用。
變量:計算機在空閑的內(nèi)存中開辟存儲空間,用來存儲數(shù)據(jù)。
- 根據(jù)變量的類型,分配的存儲空間會有大小變化。
- 變量名在程序中作為該變量空間的索引??芍苯訁⑴c運算。
- 變量賦值:=
2.2.2 變量類型
整型 int:100
浮點型 float:100.0
字符串 str:‘a(chǎn)bc'、"ABC"
布爾值 bool:True、False
- 計算機需要用不同的方式來存儲不同的類型,每種數(shù)據(jù)所需的存儲空間也不同。
- 為了效率和實用性,計算機在內(nèi)存中必須要分類型存儲。
- 靜態(tài)類型語言中,新建變量必須說明類型。
- 動態(tài)類型的語言看起來不需要說明類型,但其實是把區(qū)分類型的工作交給解釋器。
2.2.3 序列
序列:有順序的數(shù)據(jù)集合??梢园粋€或多個元素,也可以是完全沒有任何元素的空序列,即序列名 = []。
元素:序列包含的一個數(shù)據(jù)??梢允橇硪粋€序列。
列表:序列的一種,建立后元素可更改。列表名 = [元素1, 元素2, 元素3, ……]。
元組:序列的一種,建立后元素不可更改。元組名 = (元素1, 元素2, 元素3, ……)。
下標(biāo):序列元素的位置索引,從0開始。
單個引用:序列名[下標(biāo)],可用此進行單個元素賦值。
尾部引用:序列名[-1]表示最后一個元素,-2以此類推。
范圍引用:序列名[下限:上限:步長]。
- 下限表示起始下標(biāo),上限表示結(jié)尾下標(biāo)。
- 在起始下標(biāo)和結(jié)尾下標(biāo)之間,按照步長的間隔來找到元素。默認的步長為1。
- 如果寫明上限,那么這個上限下標(biāo)指向的元素將不包括在結(jié)果中。
- 范圍引用的結(jié)果還是原類型。
2.2.4 詞典
詞典:可以容納多個元素的容器,允許用自定義的方式來建立數(shù)據(jù)的索引。詞典名 = {"鍵1": 值1, "鍵2": 值2, "鍵3": 值3,……}。可為空詞典,即詞典名 = {}。
鍵:數(shù)據(jù)的索引。
值:數(shù)據(jù)本身。
引用:詞典名["鍵"],可用此修改或增添一個元素的值。
2.3 計算機懂選擇
2.3.1. if結(jié)構(gòu)
if結(jié)構(gòu):
if <條件判斷>:
????<執(zhí)行1>
else:
????<執(zhí)行2>
- 從上往下進行條件判斷,若True則執(zhí)行并忽略余下部分。
- 可以寫只有if的程序。與空的else等價。如果if后的條件不成立,那么計算機什么都不用執(zhí)行。
2.3.2. 小弟靠后站
縮進:python中強制使用四個空格的縮進來表示隸屬關(guān)系,替代了大部分主流語言里標(biāo)記程序塊的花括號。
2.3.3 if的嵌套與elif
elif結(jié)構(gòu):
if <條件判斷1>:
????<執(zhí)行1>
elif <條件判斷2>:
????<執(zhí)行2>
elif <條件判斷3>:
????<執(zhí)行3>
else:
????<執(zhí)行4>
if的嵌套:
if <條件判斷1>:
????<執(zhí)行1>
????if<條件判斷2>:
????????<執(zhí)行2>
????else:
????????<執(zhí)行3>
else:
????<執(zhí)行2>
2.4 計算機能循環(huán)
2.4.1 for循環(huán)
for循環(huán)1:
for 元素 in 序列:
????<執(zhí)行>
- 從序列中取出元素,再賦予給一個變量并在隸屬程序中使用。
- 隸屬程序會被重復(fù),元素的個數(shù)決定了循環(huán)重復(fù)的次數(shù)。
for循環(huán)2:簡單的重復(fù)特定次數(shù)
for i in range(x):
????<執(zhí)行>
- range()函數(shù)可從0開始創(chuàng)建一個整數(shù)列表。說明了需要重復(fù)的次數(shù)。
- 變量i為每次循環(huán)起到計數(shù)功能。
2.4.2. while循環(huán)
whlie循環(huán):
while <條件判斷>:
????<執(zhí)行>
- 如果條件為真,則while會不停地循環(huán)執(zhí)行隸屬于它的語句。只有條件為假時,程序才會停止。
2.4.3. 跳過或終止
continue:跳過循環(huán)的這一次執(zhí)行,進行下一次的循環(huán)操作 。
break:停止執(zhí)行整個循環(huán)。
代碼地址:https://gitee.com/sibyltui/learn_programming_from_python