段譽比劍:《誰說不能從武俠學程式》選摘(1)

2022-09-08 05:10

? 人氣

再按一次輸入鍵,Python 直譯器執行print(result) 這個輸出語句,報出結果:1。result 為1,表示段譽與慕容復比劍的結局是贏。

[啟動LINE推播] 每日重大新聞通知

直譯器裡調試通過,說明代碼不再有bug,打開編輯器, 將正確的代碼複製過去,注意調整縮進格式:

defense = False 

if defense == True: 

result = 0 

else: 

result = 1 

print(result) 

按快速鍵F5,使程式運行起來,編輯器會彈出一個小小的對話方塊:第三章 控制語句,三招兩式 118 119 

「Source Must Be Saved OK to Save?」(原始程式碼必須保存,要選擇保存嗎?)當然要保存。點確定,給程式取一個合適的名字,例如「段譽比劍」,保存到合適的目錄下。保存後,後臺編譯器立刻啟動,將代碼翻譯成機器語言,交給記憶體執行,執行結果會在另一個視窗當中顯示出來:

=============== RESTART: 段譽比劍.py =============== 

結果只出一個數字1,我們懂得這個1 代表的含義(段譽贏),但別人未必懂,為了讓程式更加人性化,還要完善代碼。不妨將print 代碼塊擴充為另一個判斷語句,使整個程式變成這樣:

defense = False 

if defense == True: 

result = 0 

else: 

result = 1 

if result == 0: 

print(‘ 段譽將在比劍中輸給慕容復’) 

else: 

print(‘ 段譽將在比劍中勝過慕容復’) 

後一個判斷語句用來判斷result 的值,如果值為0,輸出「段譽將在比劍中輸給慕容復」,否則輸出「段譽將在比劍中勝過慕容復」。

按F5 運行,程式輸出的結果好懂多了:

=============== RESTART: 段譽比劍.py =============== 

段譽將在比劍中勝過慕容復

細究起來,這個程式還缺乏互動環節,因此缺乏實用價值。對段譽來說,需要的是一個能幫他做決斷的程式:只要他輸入比劍策略,程式就能預測他的比劍結局。Python 恰好有一個能接受使用者輸入的內置函式input,該函式的語法規則是:

字串變數 = input(‘ 提示使用者輸入某些內容:’) 

還是在直譯器裡試用input 函式,先了解使用方法和實際功能,再回到編輯器完善代碼。試用過程從略,這裡直接給出完善後的代碼:

關鍵字:
風傳媒歡迎各界分享發聲,來稿請寄至 opinion@storm.mg

本週最多人贊助文章