收藏 分享(赏)

Python程式设计入门.ppt

上传人:yjrm16270 文档编号:8368055 上传时间:2019-06-23 格式:PPT 页数:21 大小:220KB
下载 相关 举报
Python程式设计入门.ppt_第1页
第1页 / 共21页
Python程式设计入门.ppt_第2页
第2页 / 共21页
Python程式设计入门.ppt_第3页
第3页 / 共21页
Python程式设计入门.ppt_第4页
第4页 / 共21页
Python程式设计入门.ppt_第5页
第5页 / 共21页
点击查看更多>>
资源描述

1、Python程式設計入門,dexcdpa.nsysu.edu.tw,北京白癜风医院提供,簡介,Script Program Language Object-Oriented Program Language General-Purpose Program Language Easy to learn 誰在使用Python呢? 大神Google 美國太空總署(NASA) How to Become a Hacker 一文中推薦使用,北京白癜风医院提供,使用Python,有兩種主要使用python的方法 使用互動式命令列 e.q. 直接鍵入python就會進入python的互動式命令列 將程式寫成

2、檔案,再由python執行 直在將程式碼寫在檔案內,然後再執行python去讀取該檔案 Ex: python hello.py 或是在檔案的第一個行寫著 #!/usr/bin/env python,然後在第二行之後輸入程式碼,如此可以直接執行該檔案 Ex: ./hello.py 作業平台 Linux、FreeBSD Windows,北京白癜风医院提供,您的第一個python程式 Hello World,使用互動式命令列 print “Hello World” Hello World 放在檔案裡 #!/usr/bin/env python print “Hello World” 記得將檔案改成可

3、執行 chmod a+x ,北京白癜风医院提供,基本概念,語法特色 以冒號(:)做為敘述的開始 不必使用分號(;)做為結尾 井字號(#)做為註解符號,同行井字號後的任何字將被忽略 使用tab鍵做為縮排區塊的依據 不必指定變數型態 (runtime時才會進行binding),北京白癜风医院提供,變數(Variables)和 表示式(Expressions),表示式 3 + 5 3 + (5 * 4) 3 * 2 Hello + World 變數指定 a = 4 3 b = a * 4.5 c = (a+b)/2.5 a = “Hello World” 型別是動態的,會根據指定時的物件來決定型別

4、變數單純只是物件的名稱,並不會和記憶體綁在一起。 e.q.和記憶體綁在一起的是物件,而不是物件名稱。,北京白癜风医院提供,條件式敘述 (Conditional Statements) Part I,if-else if a b:z = b else:z = a pass 敘述 不做任何事時使用 if a b:pass else:z = a,北京白癜风医院提供,條件式敘述 (Conditional Statements) Part II,elif敘述 if a = +:op = PLUS elif a = -:op = MINUS else:op = UNKNOWN 沒有像C語言一樣,有swit

5、ch的語法 布林表示式 and, or, not if b = a and b c):print b is still between a and c,北京白癜风医院提供,基本型態 (Numbers and String),Numbers (數) a = 3 # Integer (整數) b = 4.5 # Float point (浮點數) c = 51728888333L # Long Integer (精準度無限) d = 4 + 3j # Complex number (複數) Strings (字串) a = Hello # Single quotes b = “World” # D

6、ouble quotes c = “Bob said hey there.” # A mix of both d = A triple qouted string can span multiple lines like this e = “”Also works for double quotes”,北京白癜风医院提供,基本型態 串列(Lists),任意物件的串列 a = 2, 3, 4 # A list of integer b = 2, 7, 3.5, “Hello” # A mixed list c = # An empty list d = 2, a, b # A list cont

7、aining a list e = a + b # Join two lists 串列的操作 x = a1 # Get 2nd element (0 is first) y = b1:3 # Return a sub-list z = d102 # Nested lists b0 = 42 # Change an element,北京白癜风医院提供,基本型態 固定有序列(Tuples),Tuples f = (2,3,4,5) # A tuple of integers g = (,) # An empty tuple h = (2, 3,4, (10,11,12) # A tuple con

8、taining mixed objects Tuples的操作 x = f1 # Element access. x = 3 y = f1:3 # Slices. y = (3,4) z = h11 # Nesting. z = 4 特色 與list類似,最大的不同tuple是一種唯讀且不可變更的資料結構 不可取代tuple中的任意一個元素,因為它是唯讀不可變更的,北京白癜风医院提供,基本型態 字典 (Dictionaries),Dictionaries (關聯陣列) a = # An empty dictionary b = x: 3, y: 4 c = uid: 105,login: be

9、azley,name : David Beazley Dictionaries的存取 u = cuid # Get an element cshell = “/bin/sh“ # Set an element if c.has_key(“directory“): # Check for presence of an memberd = cdirectory else:d = Noned = c.get(“directory“,None) # Same thing, more compact,北京白癜风医院提供,迴圈 (Loops),while敘述 while a b:# Do somethin

10、ga = a + 1 for敘述 (走訪序列的元素) for i in 3, 4, 10, 25:print i# Print characters one at a time for c in “Hello World“:print c# Loop over a range of numbers for i in range(0,100):print i,北京白癜风医院提供,函式 (Functions),def敘述 # Return the remainder of a/b def remainder(a,b):q = a/br = a - q*breturn r# Now use it a

11、 = remainder(42,5) # a = 2 回傳一個以上的值 def divide(a,b):q = a/br = a - q*breturn q,rx,y = divide(42,5) # x = 8, y = 2,北京白癜风医院提供,類別 (Classes),class敘述 class Account:def _init_(self, initial):self.balance = initialdef deposit(self, amt):self.balance = self.balance + amtdef withdraw(self,amt):self.balance =

12、 self.balance - amtdef getbalance(self):return self.balance 使用定義好的class a = Account(1000.00) a.deposit(550.23) a.deposit(100) a.withdraw(50) print a.getbalance(),北京白癜风医院提供,例外處理 (Exceptions),try敘述 try:f = open(“foo“) except IOError:print “Couldnt open foo. Sorry.“ raise敘述 def factorial(n):if n factor

13、ial(-1) Traceback (innermost last):File “, line 1, in ?File “, line 3, in factorial ValueError: Expected non-negative number ,北京白癜风医院提供,檔案處理,open()函式 f = open(“foo“,“w“) # Open a file for writing g = open(“bar“,“r“) # Open a file for reading 檔案的讀取/寫入 f.write(“Hello World“) data = g.read() # Read all

14、 data line = g.readline() # Read a single line lines = g.readlines() # Read data as a list of lines 格式化的輸入輸出 使用%來格式化字串 for i in range(0,10):f.write(“2 times %d = %dn“ % (i, 2*i),北京白癜风医院提供,模組 (Modules),程式可分成好幾個模組 # numbers.py def divide(a,b):q = a/br = a - q*breturn q,rdef gcd(x,y):g = ywhile x 0:g =

15、 xx = y % xy = greturn g import敘述 import numbers x,y = numbers.divide(42,5) n = numbers.gcd(7291823, 5683),北京白癜风医院提供,Python的標準模組函式庫,Python本身就包含了大量的模組提供使用 String processing Operating system interfaces Networking Threads GUI Database Language services Security. 使用模組 import string . a = string.split(x),北京白癜风医院提供,參考,官方網頁(英) http:/www.python.org Python教學文件(中) http:/www.freebsd.org.hk/html/python/tut_tw/tut.html,北京白癜风医院提供,隨堂測驗,請寫一支程式輸出下列結果 * * * * * * * * * *,北京白癜风医院提供,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报