Python 基本介紹
Python 它是一種直譯語言 Interpreted Language 1991 年由 Guido van Rossum 於阿姆斯特丹大學創作及發展 目前由 Zope 公司支援的 PythonLabs 所維護開發 它是一種直譯語言 Interpreted Language
為何要學Python? 跨平台 (Cross Platform) 易學易用 (Easy Learning) 語法結構清晰 (Clear Syntax and Structure) 延伸與內嵌 (Extended and Embedded) 開放源碼 (Open Source)
程式語言佔有率 Source: www.codeeval.com
執行python程式 – Python Shell >>> print ‘Hello python !’ Hello python !
執行python程式 – 編寫程式檔 編寫程式碼後按F5執行
基本概念 語法特色 以冒號(:)做為區塊敘述的開始 井字號(#)做為註解符號,同一列井字號後的任何字將被忽略 使用tab鍵(或四個空格)做為縮排區塊的依據 def petal(s): circle(s,90) left(90) def flower(s): for i in range(4): petal(s) def fish(s): left(120)
變數(Variables) 變數指定 a = 4 b = a * 4.5 執行結果 c = (a+b)/2 a = “Hello World” print a print b print c 執行結果 牛刀小試 請分別用Python Shell和編寫程式的方式練習”變數指定”的範例。
表示式(Expressions) 一連串的變數或數值做運算 數學運算 + - * / 加減乘除 % 取餘數 ** 次方 3 + 5 3 + (5 * 4) 3 ** 2 ‘Hello’ + ‘World’ 數學運算 + - * / 加減乘除 % 取餘數 ** 次方 執行結果
整數除法 14/4 3 1425/27 52 3 52 4 ) 14 27 ) 1425 12 135 2 75 54 21 取餘數 14 % 4 2 218 % 5 3 3 43 4 ) 14 5 ) 218 12 20 2 18 15 3 Dividing by 0 crashes the program.
基本型態 (Numbers and String) c = 51728888333L # 精準度無限 d = 4 + 3j # 複數 Strings (字串) a = ‘Hello’ b = “World” c = “It’s an example.”
基本型態 – 串列(Lists) 建立 a = [5,’p’,9,”example”] 存取 first = a[0] #得到5 second = a[1] #得到’p’ 操作 list.append(x) #將一個新的項目加到 list 的尾端 list.insert(i, x) #將一個項目插入至 list 中給定的位置 list.pop([i]) #移除list 中給定位置的項目,並回傳它 list.count(x) #回傳數值為 x 在 list 中所出現的次數 list.sort(reverse=True) #將 list 中的項目排序 牛刀小試(score.py) 建立一個socre串列,內容為班上5位同學的學期成績98, 36, 88, 20,60, 並將成績按高低排列
條件敘述 – 邏輯判斷 符號 意義 範例 結果 == 是否相等 1 + 1 == 2 True != 是否不等 3.2 != 2.5 < 小於 10 < 5 False > 大於 10 > 5 <= 小於等於 126 <= 100 >= 大於等於 5.0 >= 5.0
條件敘述 (Conditional Statements) if if score >= 60: print “pass” if-else if score >= 60: print “pass” else: print “fail” 判斷式成立才執行 二擇一執行
條件式敘述(Conditional Statements) elif敘述 if score == 100: print “perfect” elif score > 60: print “pass” else: print “fail” 布林表示式 – and, or, not if b >= a and b <= c: print ‘b is between a and c’ if not (b < a or c > c): print ‘b is still between a and c’ 多擇一執行 A C
閏年判斷 牛刀小試(leap.py) 能被400整除的年份是閏年。能被100整除但不能被400整除的,不是閏年。能被4整除但不能被100整除的年份是閏年。不能被4整除的年份不是閏年。 請寫一個程式來判斷某年是否為閏年。 year = 2017 如果是閏年,則 print “This year is a leap year.” 如果不是閏年,則 print “This year is NOT a leap year.”
迴圈 (Loops) while 迴圈 i = 1 for 迴圈 (走訪序列的元素) sum = 0 while i <= 100: sum = sum + i #也可以寫成 sum += i for 迴圈 (走訪序列的元素) for i in [30, 40, 100, 205]: print i for c in "Hello World": print c for i in range(20):