此为历史版本和 IPFS 入口查阅区,回到作品页
James測試中
IPFS 指纹 这是什么

作品指纹

Python基礎語法篇#2

James測試中
·
·
這次的主要內容為Range、Tuple、List、Dict、for-loop、while,後續較常會使用到
Range--Python內建的range型別的建構式(constructor),用來表示不可變(immutable)的數字序列

Range這個型別可用來創建並儲存特定範圍內的整數,故得名Range。
必須特別注意的是,一旦Range被創建了,裡面的內容是不可修改。
在Python中,我們有幾個方法可以創造Range

  1. range(stop) -- stop:停止點 (不包含)
  2. range(start, stop) -- start:起始值(包含) 、stop(停止值)
  3. range(start, stop, step) -- step:每個數值的間隔(遞增)

若省略start參數則預設序列數字從0開始;若省略step則序列數字預設遞增值為1。若用print()印range是以建構式的樣子來表示;若要印出range中所有的元素,可轉成list。

遇到停止點後,創造的過程就會終止,因此Range中的數字將不會包含停止點
range也可以是遞減的,把step值設為負數

range若stop為0或start的值遞增(減)前已超過stop的值,則range為空。

也可以用list來看range是不是[ ]

使用索引取出range變數中的值,索引值(index)從0起算。如果索引值超出range的範圍,會發生IndexError:range object index out of range錯誤。

索引值一向從0開始算起

若要比較兩個range變數是否相同,使用==及!=比較(邏輯運算子)。

range通常與for迴圈一起使用。

記得 :
Tuple(元組):不能修改的List,不同於list使用[],tuple使用()

Tuple可用來存放一組資料。
這組資料的個數不限,型別也不須相同。
同Range,一旦被創造,將無法修改內容。
值與值之間,要以 , 隔開。

也可以把它轉成list


List(串列) -- 儲存資料的格子 --- 語法:[element1,element2.....]

List即為Python中的陣列(Array)。
陣列是一種容器,可用來儲存眾多資料。
與Tuple最大的不同處在於,針對一個以創建的陣列,可以隨時增加或減少其內部資料的個數,也可以修改裡面的內容。

切片取值 -- 串列取值的方式除了可以使用index取得單一值,也可以使用切片的方式取得多個值。
語法:[n, m] 取出index n~(m-1)的元素

  • list[start: end],start和end都可以省略不寫
  • start的預設為0
  • end的預設為len(list)
  • list[ :end]代表 0~end-1
  • list[start: ]代表start~len(list)-1
  • list[ : ]代表0~len(list)-1

刪除元素 -- 語法:del

串列預設函數

  • len():串列元素數目
  • min():串列元素最小值
  • max():串列元素最大值
當然也有sum( )

如果想取得某個元素在串列中的操作可以使用以下函數

  • index():元素在串列中第一次出現的index
  • count():元素在串列中出現的次數

在list中加入元素

  • A.append(B):在A串列中加入B元素
  • A.extend(C):在A串列中加入C串列"的"元素
  • A.insert(C):在A串列中加入C串列
  • extend 和 insert雖然 C 同樣都是串列,但加入A串列的方式不一樣,可以注意一下

移除串列的元素

  • pop():取出串列中最後一個元素,並且移除元素
  • A.remove(B):移除A串列中第一個出現的B元素

其他串列函數操作

  • reverse():反轉串列的順序
  • sort():將串列做排序
Dict(字典):一個靠標籤能查到東西的字典

list和Tuple都是使用數字取得元素值的方式,如果想要用其他key值來取值就可以使用Dict
簡單來說,它跟list和Tuple的差別就在於前者是依照index,後者是依照標籤(key)來看。

Dict 的語法:

建立與刪除

  • dict={}: 建立空的dict
  • del dict[key]: 刪除特定的key-value pari

增加與更新

  • dict[key]=value: 如果key不存在,會增加這組“Key”:value;如果key已存在,會更新這組“Key”:value。

for … in

  • for [變數名稱] in dict:每一回合會拿到一把在dict裡的key,就可以用dict[key]拿到對應的變數。
dict沒有append,直接用增加或更新(Insert Or Update)的方式
for-loop -- 不停重複一件有規律變化的事

Python有兩種迴圈(for、while),python用縮排(Tab)和冒號 : 來表示區塊
上面已經有用過單一迴圈了,所以這邊就用巢狀迴圈來示範九九乘法表

break 及 continue

  • 在迴圈中如果要終止可以使用break、continue

python在for中還可以使用else,用在當for中的if條件一直不滿足時最後會執行else

while -- for loop的另一種寫法

輾轉相除法


CC BY-NC-ND 2.0 授权