大家好,我是「心原一馬」,內心原來一心喜歡打程式碼。
【Python 超入門】是我去年剛開始寫作時第一個系列文,
由於iT邦幫忙平台本身的限制,平常發文無法發系列文(iT邦幫忙的鐵人賽才行),
故小馬來幫各位有心學習的新手們獻上熱騰騰的重點整理啦
其實這篇早該整理了,
只是寫完【Python 超入門】系列後想到還要再統整當時有點懶~
總之呢,當時寫完【Python 超入門】共12篇(11篇正文,1篇統整(1)~(6)的內容)中,
六篇達到iT邦幫忙的達標好文之標準,
文章為當月的熱門作品,
顯示此系列作品有受到一定人數的喜愛、追蹤、收藏,
若不完整統整實在可惜,
也希望幫助到有心學習程式入門的朋友哦~
文章列表(純新手建議先按正文順序1~11讀完再看底下的總整理複習)
在這個系列中,我們從基本安裝開始教起,
一直學到了if-else邏輯讓可以程式做選擇。
看完1~6章的你,已經有能力寫出簡單的程式了。
而在系列的下半部,教了程式最常見的流程控制概念for, while,
亦學到「函數」這個概念,讓我們知道電腦可以大量幫我們做重複的運算工作,
看完7~11章的你,是否學會這個簡單的小遊戲了呢?
觀念總整理(建議零基礎者先依序讀過上方的文章列表)
秀出第一支程式- print('Hello, World!')
print() 函數貫穿整個python 學習之路,
它可以用來在螢幕上顯示出你想印的東西,
是秀出結果的重要函數,
原則上,print()裡面可以放入任何形態的變數
註解- 為你的程式添加說明
在開篇【Python 超入門】(1)中曾快速帶過,你可以在程式中加入註解,
不會影響程式執行的結果,
用三個雙引號包起來是多行註解,
寫一個「#」符號是單行註解,
看例子:
# 井字號後面可以寫一行的註解
# 程式功能: 在螢幕上顯示'Hello, World!'
"""
我是多行註解,這段文字不會影響程式的結果,
寫註意的用意是希望程式作者下次打開程式時,
可以很容易的回想起來自己在寫什麼呢 ^^
"""
print('Hello, World!')
變數形態- 數字、字串、列表(list)、布林值(boolean)
至目前為止,我們已經學會了四種變數形態,
數字、字串、列表(list)(見【Python 超入門】(4)) 與 布林值(見【Python 超入門】(6)),
簡單示例如下:
num = 5 # 我是一個整數(int)
f = 3.14 # 我是一個浮點數(float)「x = x+1」簡寫為「x += 1」
s = 'Hello, World!' # 我用單引號包起來,是個字串(str)
s2 = "小馬好可愛" # 我用雙引號包起來,我也是字串
L = ['Alice', 'Bob', 'Cindy'] #我可以存放很多資料,我是列表(list)
b = True # 我是布林值(boolean),只有True和False兩種可能,注意True和False開頭要大寫哦
算術運算?比較運算?傻傻分不清?超詳盡用法整理來了~
程式語言中,可以對數字進行「加、減、乘、除」運算;
亦可以進行比較兩個數值誰大誰小的比較運算,
這些不同的運算子是怎麼一回事呢?
讓心原一馬分門別類來詳解:
第一類: 算術運算子
算術運算子用來做數字之間的基本運算,包括「加、減、乘、除」,
其它還有取餘數,整數除法,
比較特別的是python還有次方運算。
以下表舉例說明:
運算子
說明
運算
結果
+
把兩個數相加
8+9
17
-
把兩個數相減
8-9
-1
*
把兩個數相乘
8*9
72
/
把兩個數相除
8/10
0.8
//
整數除法取商數
40//6
6
%
整數除法取餘數
40%6
4
**
次方運算
2**5
32
(註: 學過數學的朋友,可能會覺得次方符號不是「^」嗎?但「^」在程式語言中有其它的意思,由於這邊是新手教學文,在此先不解說「^」的涵義,有興趣的朋友歡迎google自學或是在留言區提出來,可以做為補充來講解)
第二類: 指定運算子
這類運算會搭配算術運算子使用,如「+=」、「-=」、…
對自身變數做完運算再存在變數中,
例如「x += 1」是「x = x+1」的簡寫。
以下表說明之: (假設原本 x=5)
運算子
運算
指定運算
結果
+=
x = x+10
x += 10
15
-=
x = x-10
x -= 10
-5
*=
x = x*10
x *= 10
50
/=
x = x/10
x /= 10
0.5
//=
x = x//3
x //= 3
1
%=
x = x%3
x %= 3
2
**=
x = x**3
x **= 3
125
第三類: 比較運算子
比較運算子可以比較兩個數值的大小,得到的結果為一個布林值。
(我們假設apple=2,banana = 3)
運算子
說明
比較運算
結果
==
等於
apple == banana
False
!=
不等於
apple != banana
True
<
小於
apple < banana
True
>
大於
apple > banana
False
<=
小於或等於
apple <= banana
True
>=
大於或等於
apple >= banana
False
第四類: 邏輯運算子
邏輯運算子針對運算式的True,False做邏輯判斷,
例如 and、or、not都是(相當於口語的「且」、「或」、「不」),
具體例子可以參考【Python 超入門】(6)的文章末尾。
運算子
用法
說明
and
運算式1 and 運算式2
只有兩個運算式都是True時才是True
or
運算式1 or 運算式2
只要任一個運算式是True就是True
not
not 運算式
結果會與原本運算式的結果相反
for…in 迴圈
for...in...的口語是「對於所有在...裡面的」,
可以拜訪一個範圍內的物件,
範例一、印出列表內元素:
students = ['Alice', 'Bob', 'Cindy', 'Daisy', 'Eve', 'Fairy']
for student in students:
print(student)
結果:
Alice
Bob
Cindy
Daisy
Eve
Fairy
範例二、印出0~99的數字:
for i in range(100):
print(i)
結果就會是
0
1
2
…
99
(註: 由於多數程式語言習慣上從0開始,
range(100)表示從0~99的整數區間,而非1~100)
範例三、印出1~100的數字:
for i in range(1, 101):
print(i)
結果就會是
1
2
3
…
100
(註: range(a,b)表示從a~b的整數區間, 包含a但不含b)
範例四、重複的事情做一百遍
for i in range(100):
print('我以後上課不會打瞌睡')
會在螢幕上顯示100行我以後上課不會打瞌睡
while 迴圈
while的口語是「只要某某條件成立,就一直做…」
while的基礎語法如下:
while 條件運算式:
只要條件成立時就會一直做這個敘述
範例- 利用while迴圈計算1+2+…+1000
ans=0 #用ans變數記錄最後加總的答案
num=1 #用num變數記錄下一個要加的數字
while num<=1000: #一直增加數字,直到num到達1000
ans+=num
num+=1 #每次把要加的數字+1
print(ans) #迴圈結束後,把答案印出來
break/continue(範例請見正文)
break和continue都有跳過的意思,
但break是直接跳出整個迴圈,
而continue只是跳過當次迴圈中接下來的指令,迴圈繼續執行。
input語法- 讓使用者可以輸入文字給程式
#改良的程式一
yourName = input("請輸入您的大名: ")
print("很高興見到你," + yourName)
測試結果(用spyder寫程式):
自定函數的基礎語法
def 函數(參數):
要執行的程式碼1
要執行的程式碼2
…
要執行的程式碼N
return 結果
參數是從外部輸入給函數使用的資料
回傳值是從函數傳回給主程式的資料,在python內會用return這個關鍵字取得回傳值。