
我們先用 encrypttest.py 來 import 本來的 encrypt.py
import encrypt e = encrypt.Encrypt() e.setCode() print() print(e.getCode()) print(e.toEncode()) print(e.toDecode()) print() # 《程式語言教學誌》的範例程式 # http://pydoing.blogspot.com/ # 檔名:encrypttest.py # 功能:示範 Python 程式 # 作者:張凱慶 # 時間:西元 2012 年 12 月
執行結果如下

因為 encrypttest.py 的執行程式部份與 encrypt.py 相同,因為 import 會先執行 encrypt.py 沒有縮排的程式碼,因此執行結果就好像 encrypttest.py 執行了兩次。
所以我們需要替 encrypt.py 加入 if __name__ == '__main__': 的條件判斷,如下
import random
class Encrypt:
def setCode(self):
self.code = [chr(i) for i in range(97, 123)]
random.shuffle(self.code)
def getCode(self):
return "".join(self.code)
def toEncode(self):
return "toEncode"
def toDecode(self):
return "toDecode"
if __name__ == '__main__':
e = Encrypt()
e.setCode()
print()
print(e.getCode())
print(e.toEncode())
print(e.toDecode())
print()
# 《程式語言教學誌》的範例程式
# http://pydoing.blogspot.com/
# 檔名:encrypt.py
# 功能:示範 Python 程式
# 作者:張凱慶
# 時間:西元 2012 年 12 月 這樣重新執行 encrypttest.py ,就 ok 囉

這樣 encrypt.py 就正式成為我們自行設計的模組 (module) 了,往後在 GUI 的 Python 程式中也是只要 import 就可以囉!不過我們希望建立物件同時建立好密碼表,這就要設定 __init__ 方法了。
| 中英文術語對照 | |
|---|---|
| 變數 | variable |
| 模組 | module |
您可以繼續參考
軟體開發
相關目錄
回 Python 入門指南
回 Python 教材
回首頁
參考資料
http://docs.python.org/3.1/tutorial/classes.html
沒有留言:
張貼留言