周蟒
此條目需要補充更多來源。 (2016年11月30日) |
編程範型 | multi-paradigm |
---|---|
實作者 | Fred Lin(gasolin) |
面市時間 | 2007年 |
目前版本 |
|
型態系統 | Strong, dynamic("duck") |
作業系統 | 跨平台 |
授權條款 | MIT授權條款 |
網站 | GitHub |
主要實作產品 | |
zhpy(即周蟒) | |
啟發語言 | |
Python, 中蟒 |
周蟒,又名zhpy,是一個輕量的,與Python語言互相容的中文Python語言。讓使用者可以使用純中文語句(繁體或簡體)來編寫程式。目前主要適用於教學上。
周蟒中文程式語言目前已不再更新。提供電子書、API、完整測試用例的開放原始碼中文程式語言。
周蟒中文程式語言的目標是協助使用者透過中文程式語言學習程式語言,進而接觸世界上大部份的程式語言,而不是脫離現實世界。 周蟒作者gasolin提出了周蟒編程風格[2]與 周蟒中文程式語言的四不一沒有,透過程式語言的約定,使用周蟒寫出的中文程式保有了易於閱讀的特性,並可完全轉換成英文Python語言程式。
周蟒語言擁有Python語言的所有特性,如高效率的高階資料結構、簡單而有效的物件導向程式設計方式等等。 由於周蟒語言完全相容Python程式語言,所以可以取用所有Python程式語言資源。
周蟒語言的長處是在於發揮"完全相容Python程式語言"的中文程式語言的優點,所有語法,關鍵詞都依照Python語言的風格。學習周蟒語言後要橋接到Python語言相當容易。
周蟒也同時提供咬一口周蟒中文程式語言[3]電子書,所有範例都一併提供與python語言程式碼的對照。
周蟒是開放原始碼的,可自由下載使用。
周蟒提供編譯器與互動式直譯器,也支援中文指令碼執行。
周蟒的Hello World程式
[編輯]下面是一個在標準輸出裝置上輸出Hello World的簡單程式,這種程式通常作為開始學習程式語言時的第一個程式:
#!/usr/bin/env zhpy
印出 "哈囉,世界"
或者是在互動式直譯器(命令列)的模式下:
$ zhpy
>>> 印出 "哈囉,世界" #支援繁中
哈囉,世界
>>> 印出 "你好,世界" #支持简中
你好,世界
>>> print "hello world" #支持英文
hello world
可以得知周蟒支援繁,簡中文,英文編程。
python 版本的程式則只支援英文:
$ python
>>> print "hello world"
hello world
範例
[編輯]以下是程式透過編譯器執行的範例:
#!/usr/bin/env zhpy
# 檔名:while.py
數字 = 23
運行 = 真
當 運行:
猜測 = 整數(輸入('輸入一個數字: '))
如果 猜測 == 數字:
印出 '恭喜, 你猜對了.'
運行 = 假 # 這會讓循環語句結束
假使 猜測 < 數字:
印出 '錯了, 數字再大一點.'
否則:
印出 '錯了, 數字再小一點.'
否則:
印出 '循環語句結束'
印出 '結束'
Python 版:
#!/usr/bin/env python
# File name: while.twpy
number = 23
running = True
while running:
guess = int(raw_input('Enter an integer : '))
if guess == number:
print 'Congratulations, you guessed it.'
running = False # this causes the while loop to stop
elif guess < number:
print 'No, it is higher than that.'
else:
print 'No, it is lower than that.'
else:
print 'The while loop is over'
print 'Done'
輸出結果
[編輯]$ zhpy while.twpy
輸入一個數字:50
錯了,數字再小一點。
輸入一個數字:22
錯了,數字再大一點。
輸入一個數字:23
恭喜,你猜對了。
循環語句結束
結束
Python版:
$ python while.py
Enter an integer : 50
No, it is lower than that.
Enter an integer : 22
No, it is higher than that.
Enter an integer : 23
Congratulations, you guessed it.
The while loop is over
Done
可印證周蟒語言在完整保留Python程式語法與關鍵字的支援外,還加上了繁簡中文保留字,變數名稱,內建型別操作的支援。
周蟒語言也可以透過ini檔或外掛程式的方式來自訂額外的中文關鍵詞,使用中文調用現有的Python模組。周蟒1.1版本之後並支援Python/周蟒程式碼雙向轉換。
物件導向
[編輯]周蟒與Python語言一樣完全支援物件導向表示方式。在周蟒官方網站中[4],有以維基的物件導向的虛擬碼為例,改寫成的周蟒版本[5]。
參考文獻
[編輯]- ^ Release 1.7.2. 2009年8月11日 [2020年10月24日].
- ^ 周蟒程式風格. zhpy - CodingStyle.wiki. [2016-11-30]. (原始內容存檔於2015-05-18) (中文).
- ^ 咬一口周蟒中文程式語言. zhpy - CodingStyle.wiki. [2016-11-30]. (原始內容存檔於2015-12-10) (中文).
- ^ 周蟒官方網站. zhpy. [2016-11-30]. (原始內容存檔於2015-11-15) (中文).
- ^ 周蟒版本. zhpy - ZhpyObjectOriented.wiki. [2016-11-30]. (原始內容存檔於2015-05-19) (中文).
參見
[編輯]外部連結
[編輯]- 周蟒官方網站
- 周蟒語法參考手冊(頁面存檔備份,存於網際網路檔案館)
- 咬一口周蟒中文程式語言電子書(頁面存檔備份,存於網際網路檔案館),由 CC 授權的 Byte of Python(頁面存檔備份,存於網際網路檔案館) 改寫。
- cheeseshop 下載網頁(頁面存檔備份,存於網際網路檔案館)
- Who is using Pyparsing(頁面存檔備份,存於網際網路檔案館)