|
: 地圖 ( m ) 、 手電筒 ( f ) 、 巧克力 ( c ) 、 繩子 ( r ) 或 棒子 ( s ) : 你 選 哪 個 ? :c 你 聽到 嗡嗡聲 。 要 尋找 聲音 來源 嗎 ? 輸入 y 或 n:n 好 主意 。 你 沒有 冒險 。 你 開始 走回 起點 。 你 發現 自己 迷路 了 ! 身後 的 聲音 愈來愈 大 。 你 開始 驚慌 ! 要 開始 跑 ( r ) 或 停下來 打電話 ( c ) ? : c 電話 不 通 。 要 跑 ( r ) 或 再 打 一 次 ( c ) ? : c 電話 不 通 。 要 跑 ( r ) 或 再 打 一 次 ( c ) ? : r 你 跑 很 快 。 聲音 變 很 大 。 一 個 女人 騎 電動 機車 從 後面 接近 你 。 她 問 : 「 我 最 喜歡 的 電腦 程式 語言 是 什麼 ? 」 : PYTHON 她 說 : 「 沒 錯 , Python 是 我 最 喜歡 的 程式 語言 。 如果 你 有 巧克力 , 我 可以 幫 你 。 」 幸運 的 是 , 你 當初 選對 了 ! 你 把 巧克力 給 她 。 她 幫助 你 回家 。 恭喜 ! 你 成功 脫身 。 你 破關 了 。 第1 步 : 加入 簡介 並 要 使用 者 做 決定 為 這 個 專題 開 一 個 新 檔案 , 可以 命名為 AdventureGame. py 。 用 print 敘述式 在 遊戲 中 加入 簡介 , 並用 input 讓 使用 者 選 一 個 帶上 冒險 旅程 的 物品 。 接著 用 if 敘述式 呈現 第一 個 選擇 並 往 不同 路線 前進 。 這 個 步驟 請 參考 以下 的 流程圖 。 顯示 簡介 從 使用 者 取得 物品 選擇 。 跟著 聲音 ? Yes 顯示 : 你 迷路 了 。 No 顯示 : 你 折返 了 ; 聲音 跟 著 你 。 以下 是 這 個 步驟 的 程式碼 。 # 冒險 遊戲 print ( ' 歡迎 來到 聖塔克魯茲山 上 冒險 遊戲 !' ) print ( '*************************************************' ) print ( ' 你 現在 在 加州 聖塔克魯茲 。 ' ) print ( ' 你 在 傍晚 一 個 人 爬山 。 ' ) print ( ' 你 可以 帶 一 項 物品 上路 :' ) print ( ' 地圖 ( m ) 、 手電筒 ( f ) 、 巧克力 ( c ) 、 繩子 ( r ) 或 棒子 ( s ) :' ) item = input ( ' 你 選 哪 個 ? :' ) print ( ' 你 聽到 嗡嗡聲 。 ' ) choice1 = input ( ' 要 尋找 聲音 來源 嗎 ? 輸入 y 或 n:' ) if choice1 == 'y': print ( ' 你 向 聲音 接近 。 ' ) print ( ' 聲音 突然 停止 。 ' ) print ( ' 你 迷路 了 ! .
.
.
' ) print ( ' 你 嘗試 打電話 , 但 沒 訊號 ! ' ) else: print ( ' 好 主意 。 你 沒有 冒險 。 ' ) print ( ' 你 開始 走回 起點 。 ' ) print ( ' 你 發現 自己 迷路 了 !' ) print ( ' 身後 的 聲音 愈來愈 大 。 你 開始 驚慌 ! ' ) 第2 步 : 加入 迴圈 建立 了 兩 種 可能性 後 , 我們 要 加入 更多 程式碼 來 延伸 故事 。 在 這 個 步驟 , 我們 要 擴充 else 的 區塊 ( 使用 者 往回 走 ; 聲音 愈來愈 大 ) 。 我們 讓 使用 者 選擇 跑 或 打電話 求救 , 但 透過 while 迴圈 , 只有 在 使用 者 選擇 跑 的 時候 才 能 繼續 。 參考 下方 這 個 while 迴圈 的 流程圖 。 在 第1 步 的 else 區塊 後面 , 也 就 是 以下 這 行 的 後面 : print ( ' 身後 的 聲音 愈來愈 大 。 你 開始 驚慌 ! ' ) 加入 以下 程式碼 : action = input ( ' 要 開始 跑 ( r ) 或 停下來 打電話 ( c ) ? :' ) while action == 'c': print ( ' 電話 不 通 。 ' ) action = input ( ' 要 跑 ( r ) 或 再 打 一 次 ( c ) ? : ' ) print ( ' 你 在 快 跑 , 接著 聲音 變 很 大 。 ' ) 動作 ? 輸入 跑 ( r ) 或 打電話 ( c ) 。 動作 =c?No 顯示 : 你 開始 跑 。 聲音 愈來愈 大 。 Yes 顯示 : 電話 不 通 訊息 。 走 哪 邊 ? 走 哪 邊 ? 走 哪 邊 ? 第3 步 : 加入 方向 選項 第1 步 的 if 區塊 ( 使用 者 跟 著 聲音 走 ) , 我們 可以 讓 使用 者 在 聲音 停止 時 選擇 前進 方向 。 這 是 個 巢狀 if 敘述式 的 例子 。 我們 要 檢查 第一 個 if 敘述式 內 的 條件 , 用 if-elif-else ( 多重 條件 ) 來 取代 單純 的 if-else 。 以下 是 故事 這 個 部分 的 流程圖 。 取得 方向 北 ? Yes 抵達 小屋 No西 ? Yes 腳 受傷 No 南 ? Yes 抵達 橋 No 抵達 公路 地圖 ? Yes 用 地圖 找路 。 No 停止 你 輸 了 。 No 停止 你 贏 了 。 繩子 或 棒子 ? Yes 修好 橋樑 並 返回 。 No 手電筒 ? Yes 發出 求救 訊號 。 在 第1 步 的 if 區塊 後面 , 也 就 是 以下 這 行 的 後面 : print ( ' 你 嘗試 打電話 , 但 沒有 訊號 ! ' ) 加入 以下 程式碼 : direction = input ( ' 你 要 往 哪 個 方向 前進 ? 北 、 南 、 東 或 西 :' ) if direction == ' 北 ': print ( ' 你 抵達 廢棄 小屋 。 ' ) if item == 'm': print ( ' 你 用 地圖 找到 回家 的 路 。 ' ) print ( ' 恭喜 ! 你 破關 了 。 ' ) else: print ( ' 如果 你 有 地圖 , 就 能 找到 從 這裡 回家 的 路 。 ' ) print ( '--- 你 還是 在 迷路 。 你 輸 了 。 ---' ) elif direction == ' 南 ': print ( ' 你 抵達 有 斷橋 的 河流 。 ' ) if item == 'r' or item == 's': print ( ' 你 選 了 可以 修好 橋樑 的 物品 。 ' ) print ( ' 你 修好 橋樑 、 過 橋 , 並 找到 回家 的 路 ' ) print ( ' 恭喜 ! 你 破關 了 。 ' ) else: print ( ' 如果 你 有 繩子 或 棒子 , 就 能 修好 橋樑 。 ' ) print ( '--- 你 還是 在 迷路 。 你 輸 了 。 ---' ) elif direction == ' 西 ': print ( ' 你 走路 時 被 傾倒 樹木 絆倒 。 ' ) print ( ' 你 的 腳 受傷 。 你 坐下 等待 救援 。 ' ) print ( ' 這 可能 要 花 很 久 時間 。 你 還是 在 迷路 。 ' ) print ( '--- 你 輸 了 。 ---' ) else: print ( ' 你 抵達 公路 邊 。 很 暗 。 ' ) if item == 'f': print ( ' 你 用 手電筒 發出 訊號 。 ' ) print ( ' 一 輛 車 停下來 , 載 你 回家 。 你 輸 了
|