發表文章

Python控制結構一點就通!(6)List串列

圖片
Python的List串列包含了哪些東西?我又該怎麼使用它?這篇就好好來解你的惑! Python教學 必教的:List 串列 List 串列是 Python 中表示資料的方法(資料結構),有順序地將一系列的物件集合在一起,具有索引特性。 List 串列的語法,是用「[]」包覆一系列的物件,每個物件(元素)均使用逗號「,」區隔,如以下例子所示: GearList = ["Scuba BCD", "Scuba Diving Regulator", "Diving Fins", "Diving Mask", "Scuba Tank", "Wet Suit"] print(GearList[0]) print(GearList[1]) print(GearList[2]) print(GearList[3]) print(GearList[4]) print(GearList[5]) 上述範例結果為: Scuba BCD Scuba Diving Regulator Diving Fins Diving Mask Scuba Tank Wet Suit 注意:List 串列的語法中,第一個物件(元素)的索引號為 0,而不是 1。 另外, Python教學 也告訴我們,想創建沒有物件的 List 串列?當然也可以!請看以下所示: empty_list = [] print(empty_list) 結果如下: [] List 串列中所包含的元素種類眾多,有字串(string)、整數與浮點數、變數等,甚至在包含另一個 List 串列(也是以「[]」包覆)。一個 List 串列可以囊括不同種類的物件,如下所示: 變數 = 3 一堆雜物 = ["string", 0, [1, 2, 變數], 4.56] print(一堆雜物[1]) print(一堆雜物[2]) print(一堆雜物[2][2]) 以上範例結果如下所示: 0 [1, 2, 變數] 3 上述的 「print(一堆雜物[2][2])」意思為輸出列表中索引「2」的物件列表中的索引「2」物件,該物...

Python控制結構一點就通!(5)while迴圈

圖片
關於Python的while迴圈,它可以製造出那些效果?一步步跟著這篇走,剩下的你不用怕啦! 關於Python-while 迴圈 Python 的 if 條件判斷式【請參考上篇的 Python教學 : Python控制結構2.if else條件判斷(1) 】,若評估為 True【請參考: Python控制結構1.布林值Boolean-True or False? 】 的話,就會執行一次;反之則不執行。 Python 的 while 迴圈跟 if 條件判斷式相似,但是不同的是,它不只執行一次。只要條件成立,它就會不斷地重複執行。就算是有其中一段代碼被評估為 False,下一段代碼仍會被執行。 while 迴圈構成,包含了 。 以下範例的 while 迴圈中有一個變數「i」, 初始值 為「1」; 更新值(又稱為調整值) 為「i+1」; 讓迴圈結束的條件 為「i <=5」。 這次 Python教學 給你以下範例,讓 i 的從初始值開始,程式每執行一次,i 就等於上一回合的數值再「+1」一次,直到 i 等於 5 為止停止,寫法如下: i = 1 #初始值 while i <=5: #讓迴圈結束的條件 print(i) i = i + 1 #更新值 (調整) 則結果為: 1 2 3 4 5 >>> while迴圈的「infinite loop(無限循環)」 Python 的 while 迴圈中,有一種被稱作「infinite loop(無限循環)」,當條件(為True)成立時,該程式就會永不停止地重複執行。 「infinite loop(無限循環)」的範例如下: while 7==7: print("這是無限循環迴圈") 結果,「這是無限循環迴圈」這行字就會不斷的重複顯示。 若你真的受不了,你可以 按鍵盤快速鍵「Ctrl-C」以阻止它繼續重複顯示。 以下也是無限循環迴圈的另一個例子,來看看它的結果如何吧! x=1 >>> while x>0: print(x) x+2 結果馬上會跳出一堆數字,且不斷的在跳出中。後出來的數字,都是...

Python控制結構入門必學(4)運算子優先順序一覽

圖片
想知道更多關於 Python 控制結構的相關知識,今天要講的運算子優先順序你也不能錯過! 運算子優先順序(operator precedence)在包含 Python 及其他的程式語言都是很重要的概念。它是數學運算順序(如先乘除後加減)概念的延伸,並包含其的他運算子如布林運算子等。 在Python課程提供的表格中,列出了 Python 的運算子的優先順序,優先順序由高至低如下: ** 指數 (最高優先順序),範例:2**3 = 8 ~< 補數 + - 正數 負數 * / // % 乘 除 地板除法(只取整數的除法) 餘數 + - 加法 減法 >> << 右移 左移 & 與 ^ XOR | OR in not in is is not > < >= <= != == 比較運算子 not x 布林值:不(NOT) and 布林值:和(AND) or 布林值:或(OR) Python 的運算子的優先順序,可由以下例子練習: 16 - 2 * 5 // 3 + 1 結果如下: 14 解析:上例首先計算 2 * 5 得到 10,然後是 10 // 3 得到值 3 (此為忽略餘數的地板除法,所以無小數點),然後計算 16 - 3 + 1 得到 14。 又如下例,結果會如何? x = 4 y = 2 if not 1 + 1 == y or x == 4 and 7 == 8: print("Ye...

Python控制結構一點就通!(3)布林邏輯

圖片
Python的if條件判斷式變得複雜,就是時候派出布林邏輯啦!一起來看看Python有哪些運算子! 當 Python 的 if 條件判斷式 (需要複習if...else條件判斷式?請看 這篇 !)變得更複雜,有超過一種的狀況時,就使用 Boolean Logic 布林邏輯式。 Python 的 Boolean 運算子包含: and(和) 、 or(或) 、 not(不是) 。 今天的 Python教學 就來介紹它們! Python 的 and 運算子 : 包含兩個條件參數,當兩個條件都成立時,才會被評估為「True」。但記住!只要其中有一個不成立,就為「False」。【參考: Python控制結構1.布林值Boolean-True or False? 】 >>> bool( 1 == 1 and 2 == 2 ) True >>> bool( 1 == 1 and 2 != 2 ) False >>> bool( 1 < 1 and 2 >= 2 ) False >>> bool( 1 < 1 and 2 != 2 ) False 下方 Python 程式例子,就是為只有符合「年滿18歲」及「低消超過180元」才會輸出「welcome」的例子 age=21 money=500 if age >= 18 and money >= 180: print("welcome") 結果顯示如下: >>> welcome >>> Python 的 or 運算子 : 包含兩個參數,只要其中有一個條件成立,就會被評估為「True」。兩個條件都不成立才會被判定為「False」 >>> bool( 1 == 1 or 2 == 2 ) True >>> bool( 1 != 1 or 2 == 2 ) True >>> bool( 1 != 1 or 2 != 2) False 下方例子為只要符合「年滿65歲」或是「你付超過3000元」兩條件任一種,就會輸出「You'll get a...

Python控制結構一點就通!(2-2)else的條件判斷

圖片
Python的if條件判斷學完之後,怎能虎頭蛇尾不學另一個else呢?快繼續看下去! 上一篇文章: Python控制結構2.if else條件判斷(1) ,我們已經知道 if...else 的 if 的用法,這一篇當然就來講述 else 的功能! Python 的 if...else 條件判斷式,除了單純的 if 設定一組條件之外,還可加上 else...if 或 else 增加條件。而每一個 if,都可以設定不同的條件。 例如:在上 Python教學 時,你要想要試著寫出一個 Python 程式,並判斷你所輸入的樂團名稱「Megadeth」,是否在四大鞭擊金屬樂團之列。則程式如下例所示: bandname = "Metallica" if bandname == "Megadeth": print("無庸置疑,Megadeth 無論在歌曲的編制、樂句的表現與技巧的專精,都勝過其他的鞭擊金屬樂團。") else: if bandname == "Metallica": print("Metallica 也是四大鞭擊金屬樂團之一。但是最好的是前四張專輯") else: if bandname == "Anthrax": print("Anthrax 也是四大鞭擊金屬樂團之一。但是地位不如 Megadeth 與 Metallica") else: if bandname == "Slayer": print("Slayer 確實是四大鞭擊金屬樂團之一。但是我對他們不熟") else: print("你輸入的樂團名稱不在四大鞭擊金屬樂團之中") 結果顯示如下: >>> Metallica 也是四大鞭擊金屬樂團之一。但是最好的是前四張專輯 >>> 以上 Python 的例子,你可以把樂...

Python控制結構一點就通!(2-1)if的條件判斷

圖片
你知道python中的if指令,它的條件判斷怎麼用嗎?這篇將用最淺的文字為你介紹! 聽過 Python教學 的課,都會知道:在 Python 中,若有滿足特定的條件,則可以使用 if 指令。要是滿足了某個指定的條件(即是布林值為「True」,若不懂何謂布林值,請看這篇介紹: Python控制結構1.布林值Boolean-True or False? ),則這個程式的片段會被執行。反之,就是不執行囉。 if 指令的語法如下 if <條件>: 執行的狀況 範例:如果 x 小於 0 則輸出「x 是負數」,而不論 x 的值為何,最後都會輸出「此 Python 程式結束」。 x=-10 if x < 0: print("x 是負數") print("此Python程式結束") 結果顯示如下: >>> x 是負數 此Python程式結束 >>> 呈上例,若 x=10 的話,則結果只會顯示「此 Python 程式結束」。 有時,if 條件式裡還會有另一組 if 條件式,就形成多層 if 條件式的架構。這種情況稱為「巢狀 if 條件式」。巢狀 if 條件式就好像設定多道關卡,資料必須經過每一道關卡的檢驗。滿足了第一關的條件,才會到第二關。這是用來檢視是否滿足多種條件的方法。如下例,如果要判斷一個人是否可以觀看輔導級、甚至限制級的電影,必須先知道他的年齡。我們把輔導級的年齡設定為 15 歲,限制級的年齡設定為 18 歲。若能觀看輔導級,不見得可以看限制級的電影;但若能看限制級的電影,則輔導級電影也可以看。今天來了一個 17 歲的人,正從以下電影考慮挑一部電影看。他們是:限制級的「藍波:最後一滴血」和輔 15 級的「無間行動」。他的年齡可以看哪一部電影呢?請參考以下程式碼: age = 17 if age >= 15: print("已滿15歲,可以觀賞輔15級的電影") if age <18: print("未滿18歲不得觀賞限制級的電影") 結果顯示如下: 已滿15歲,可以觀賞輔15級的電影 未滿18歲不得觀賞限制級的電影 因此,他必須放棄...

Python控制結構一點就通!(1)布林值

圖片
今天要開始學習Python控制結構!第一篇就要帶你來看它的布林值!還不知道怎樣才是相等?看完這篇就不再搞錯啦! Python 程式語法中的其中一種,就是布林代數 (Boolean algebra),而 Python教學 就會告訴你,它布林型態為 bool。 說到布林值(Boolean value),它僅有兩種: True 和 False。 而布林值可以藉由關係運算子 (Relational operator) 來建立。例如:兩個等號 == 用來比較兩個值,如果相等,回覆 True,否則就回覆 False: >>> Megadeth = True >>> bool(Megadeth) True >>> bool(2==3) False >>> bool(3==3) True >>> bool("Hangar 18"=="Hangar 18") True >>> bool("Return to Hangar"=="Return to Hangar") True 與兩個等號「==」相反的關係運算子「!=」,也是用來比較兩個值,如果「不」相等就回覆 True,否則回覆 False: >>> bool(2!=3) True >>> bool(2!=2) False >>> bool("Megadeth"!="Megadeth") False >>> bool("megadeth"!="Megadeth") True Python教學 中應該都有提到,在  Python 中, 大小寫是不能視為相等的 。所以上方最後兩個例子雖然字母都一樣(都為 “Megadeth”),但是後一個例子的開頭字母大小寫不同,所以就被視為「不」相等。 比較兩個數值(不限整數或是浮點數)大小的運算子「>(大於)」、「<(小於)」、「>=(大於或等於)」、「<=(小於或等於)」 請看以下例子:...