Top Banner
英文不太好,也能第一次程式設 計就上手-- 使用Python 與周蟒(ZHPY) gasolin on tossug2008 http://zhpy.googlecode.com
44

第一次程式設計就上手 - 使用Python 與周蟒(zhpy)

Jan 28, 2015

Download

Technology

Fred Lin

用中文編程語言來學習程式語言的基礎

08年於Tossug活動中, 在OpenMoko場地分享的講題.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

英文不太好,也能第一次程式設計就上手-- 使用Python 與周蟒(ZHPY)

gasolin on tossug2008http://zhpy.googlecode.com

Page 2: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

我為甚麼想要編寫程式?

思考

Page 3: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

學習新把戲

程式設計

Programming

Page 4: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

加強邏輯能力

優雅、清晰地表達想法

Logic

Page 5: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

討生活

教教我可以月入數萬的技巧

Application

Page 6: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

選擇程式語言

從哪開始?

從甚麼程式語言開始?

Page 7: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

選擇適合我的程式語言條件

●用的上的程式語言

●符合自己學習能力的程式語言

●參考資料多的程式語言

●有特色的程式語言

Page 8: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

最重要的對初學者

Page 9: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

成就感學了後立即能用上

學習時能很容易看到結果

Page 10: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

思考寫漂亮的程式?

還是寫好讀的程式?

Page 11: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

五項修練Programmer 的

Page 12: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

 

背景知識

榮譽心文件維護

工具

Page 13: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

計概輸出、輸入、硬碟、記憶體、CPU、網路...

背景知識

Page 14: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

工具x 11 路 v 腳踏車

Utilities

x 歪哥 v 正妹

Page 15: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

維護讀程式的機會 >> 寫程式的機會

Maintainance

Page 16: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

文件Documentation

X 接手維護的人該死

X 生命會為自己找出路

v 簡單易讀的文件

Page 17: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

x 榮譽心 v 交差:p

把事情做完

還是把事情做好?做對的事情?還是把事情做對?

Page 18: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

範例

Page 19: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

As for Python

It’s gorgeous. It’s like poetry. It’s so clean, so logical, so regular, so obvious. And the import system is to-die-for.

-- Adrian Holovaty,, creator of Django

Page 20: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

Python 程式語言...特性

跨平台、簡單、易讀、有風格

$ python >>> import this

Page 21: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

周蟒程式語言...特性

●Python 語法

●中文關鍵詞, 中文變數

●用阿拉伯數字與數學運算符號

●用英文標點符號

●能與 Python 程式雙向轉換

Page 22: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

程式

Page 23: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

互動式直譯器

$zhpy --tw周蟒 1.4 於 darwin 基於 Python 2.5.1>>>>>> 股市指數 = 輸入('指數:')指數: 8300>>> 印出 股市指數

8300

Page 24: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

輸入/印出

Page 25: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

輸入/印出

程式:股市指數 = 輸入('指數: ')印出 股市指數

執行:$zhpy a.twpy指數: 80008000

Page 26: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

型別

Page 27: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

字串、數字

>>> a = 1; b = 2>>> a + b3

>>> 茶 = 'tea'>>> 長度(茶)3

>>> tea = 'tea'>>> len(tea)3

>>> 1 == 1True>>> 1 == 2False>>> 1 != 2True>>> 2 != 2False

布林 (True/False)

Page 28: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

多元組 tuple變數值互換

>>> a = 1; b = 2>>> b, a = a, b>>> a, b(2, 1)

一次完成賦值

>>> 聯絡資料 = ('gasolin', '霍格華茲', '貓頭鷹7號')>>> 姓名, 地址, 聯絡方式 = 聯絡資料

>>> 地址霍格華茲

其他語言:temp = aa = bb = temp

Page 29: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

列表 list

>>> 人物 = ['哈利', '榮恩']>>> 人物.加入('妙麗')

取值

>>> 人物[2]'妙麗'>>> 人物[1:]['榮恩', '妙麗']

>>> 人物

['哈利', '榮恩', '妙麗']

>>> 人物[::-1]['妙麗', '榮恩', '哈利']

Page 30: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

字典 dict

>>> 魔法物品 = {                 '飛天掃帚':'Broomsticks',                 '港口鑰':'PorkKey'                 }

設定參數>>> 魔法物品['港口鑰'] = 'PortKey'取得參數>>> 魔法物品['港口鑰'] 'PortKey'

Page 31: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

流程

Page 32: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

如果..否則

程式:股市指數 = 輸入('指數: ')如果 股市指數 > 9000:         印出 '政府英明'否則:        印出 '都是阿共仔的陰謀啦'

執行:指數: 8300都是阿共仔的陰謀啦

Page 33: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

迴圈

程式:""" 九九乘法 """取 乘數 自 範圍(1, 10):    取 被乘數 自 範圍(1, 10):        印出 '%d * %d = %d'%                (乘數, 被乘數, 乘數 * 被乘數)

執行:1 * 1 = 11 * 2 = 2...

Page 34: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

函式

程式: zhpy/example/loop/tabl.twpy#coding=utf-8定義 算表(表格大小):    取 乘數 自 範圍(1, 表格大小+1):        取 被乘數 自 範圍(1, 表格大小+1):            印出 "%d*%d=%d"%(乘數,被乘數,乘數*被乘數)

算表(3)

Page 35: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

物件

Page 36: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

物件

程式:類別 鴨子(物件):    定義 呱呱叫(我):         印出  '呱呱'

主程式:    番紅鴨 = 鴨子()    番紅鴨.呱呱叫()

執行:'呱呱'

Page 37: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

繼承

程式:

類別 鳥類(物件):    定義 呱呱叫(我):         略過

類別 鴨子(鳥類):    定義 呱呱叫(我):         印出  '呱呱'

Page 38: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

中文腳本

腳本:

#!/usr/bin/env zhpy#coding=utf-8導入 系統

印出 系統.參數

執行:$ ./hello_arg.twpy hello world['./hello_arg.twpy', 'hello', 'world']

● view in examples/hello_arg.twpy

Page 39: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

系統

Page 40: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

周蟒基本架構

Page 41: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

設計

Page 42: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

特點:與 Python 程式的完全互換

Page 43: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

特點:唯一識別符號(URI)

Page 44: 第一次程式設計就上手  - 使用Python 與周蟒(zhpy)

End

●請到周蟒網站下載周蟒

●或閱讀咬一口周蟒語言電子書.●關鍵字: python、周蟒、zhpy