【Python實作】製作簡易碼表|倒數幾分鐘、幾秒鐘

這篇要用 Python 製作一個簡易倒數計時器,也可以想成簡單版的碼表。使用者輸入秒數後,程式會每隔 1 秒倒數一次,並用 分鐘:秒數 的格式顯示。

📘 Python 實作|製作簡易碼表:倒數幾分鐘、幾秒鐘

練習目的

這次的練習目標,是透過倒數計時器來熟悉 Python 的時間控制、數學運算,以及字串格式化。

  • 練習使用 time.sleep() 讓程式暫停指定秒數。
  • 練習使用 % 取得餘數。
  • 練習使用 // 取得整除結果。
  • 練習使用 for 迴圈進行倒數。
  • 練習使用 f-string 格式化輸出時間。

相關文章

🧭 題目說明

讓使用者輸入一個倒數秒數,程式會從該秒數開始倒數到 1,每秒更新一次畫面。

為了讓倒數畫面比較像一般計時器,本篇會把秒數轉換成 分鐘:秒數 的格式。

例如使用者輸入 75 秒: 75 秒 = 1 分 15 秒 畫面會顯示: 01:15 01:14 01:13 ... 00:01 時間到了!

🧪 完整程式碼

以下是完整的 Python 倒數計時器程式。

# 程式開始 import time myTime = int(input("請輸入要倒數的秒數")) for t in range(myTime, 0, -1): seconds = t % 60 minutes = t // 60 print(f"{minutes:02}:{seconds:02}") time.sleep(1) print("時間到了!") # 程式結束

🖥️ 程式輸出結果

假設使用者輸入 75,程式會從 01:15 開始倒數。

請輸入要倒數的秒數75
(以下每 1 秒會跳一個數字,總共跳 75 秒)

01:15
01:14
01:13
01:12
01:11
01:10
01:09
01:08
01:07
01:06
01:05
01:04
01:03
01:02
01:01
01:00
00:59
00:58
00:57
00:56
00:55
00:54
00:53
00:52
00:51
00:50
00:49
00:48
00:47
00:46
00:45
00:44
00:43
00:42
00:41
00:40
00:39
00:38
00:37
00:36
00:35
00:34
00:33
00:32
00:31
00:30
00:29
00:28
00:27
00:26
00:25
00:24
00:23
00:22
00:21
00:20
00:19
00:18
00:17
00:16
00:15
00:14
00:13
00:12
00:11
00:10
00:09
00:08
00:07
00:06
00:05
00:04
00:03
00:02
00:01
時間到了!

🔎 程式說明

這支程式的核心邏輯很單純:先取得使用者輸入的秒數,再用 for 迴圈一路倒數,每次倒數時把秒數換算成「幾分幾秒」。

1. 匯入 time 模組

import time

一開始要先匯入 time 模組,後面才能使用 time.sleep()

這是剛開始寫程式時很容易忘記的一步。只要程式中有用到 time.sleep(),前面就要先寫 import time

import 的意思是「匯入模組」。
Python 內建很多實用模組,time 就是用來處理時間相關功能的模組。

2. 讓使用者輸入倒數秒數

myTime = int(input("請輸入要倒數的秒數"))

這一行會讓使用者輸入想要倒數的秒數。

因為 input() 讀進來的資料預設是字串,所以需要使用 int() 轉成整數,後面才能拿來做數學運算。

使用者輸入: 75 程式取得: myTime = 75

3. 使用 for 迴圈進行倒數

for t in range(myTime, 0, -1):

這行是倒數功能的主要結構。

range(myTime, 0, -1) 代表從 myTime 開始,每次減少 1,一直數到接近 0

如果 myTime = 5 range(5, 0, -1) 會產生: 5 4 3 2 1
Python 的 range() 會包含起始值,但不包含結束值。
所以 range(myTime, 0, -1) 會倒數到 1,不會印出 0

4. 使用 % 計算秒數

seconds = t % 60

這一行是用來取得「秒數」的部分。

因為 1 分鐘等於 60 秒,所以如果總秒數超過 60 秒,就要把它拆成「分鐘」和「剩下的秒數」。

% 是取餘數的運算子,可以得到除法後剩下的部分。

75 % 60 = 15

也就是說,75 秒可以拆成 1 分鐘又 15 秒,而這個 15 就是要放進 seconds 的數字。

5. 使用 // 計算分鐘

minutes = t // 60

這一行是用來取得「分鐘」的部分。

在 Python 中,/ 是一般除法,而 // 是整除。

整除的意思是只保留商的整數部分,不保留小數,也不保留餘數。

75 // 60 = 1 125 // 60 = 2

例如使用者輸入 125 秒:

125 秒 = 2 分 5 秒 minutes = 125 // 60 = 2 seconds = 125 % 60 = 5
可以這樣記:
// 負責算「有幾分鐘」。
% 負責算「剩幾秒」。

6. 使用 f-string 格式化輸出

print(f"{minutes:02}:{seconds:02}")

這一行會把分鐘和秒數印成常見的時間格式。

其中 :02 的意思是:至少顯示 2 位數,如果不足 2 位,就在前面補 0

minutes = 1 seconds = 5 print(f"{minutes:02}:{seconds:02}") 輸出結果: 01:05

如果沒有使用 :02,畫面可能會變成 1:5,看起來就比較不像真正的倒數計時器。

7. 使用 time.sleep(1) 暫停 1 秒

time.sleep(1)

time.sleep(1) 會讓程式暫停 1 秒。

在這個倒數計時器中,每印出一次時間,就暫停 1 秒,這樣畫面看起來才會像真正的倒數。

印出 01:15 等待 1 秒 印出 01:14 等待 1 秒 印出 01:13 等待 1 秒

8. 倒數結束後印出提示文字

print("時間到了!")

for 迴圈結束後,代表倒數已經完成。

這時候程式會印出 時間到了!,提醒使用者倒數結束。

🧭 執行流程整理

用表格整理這支倒數計時器的執行流程,會更容易理解每一段程式碼的用途。

步驟 程式做什麼 目的
1 匯入 time 模組 準備使用 time.sleep()
2 讀取使用者輸入 取得要倒數的秒數。
3 使用 range(myTime, 0, -1) 從指定秒數開始倒數到 1。
4 使用 t % 60 取得剩餘秒數。
5 使用 t // 60 取得分鐘數。
6 使用 f"{minutes:02}:{seconds:02}" 把時間格式化成兩位數顯示。
7 使用 time.sleep(1) 讓程式每次暫停 1 秒。
8 印出 時間到了! 提示倒數結束。

💡 小補充://、% 和 :02 的差別

這題最容易混淆的地方,是 //%:02 的用途。它們看起來都跟數字有關,但負責的事情不一樣。

語法 意思 例子
// 整除,取商的整數部分。 75 // 60 = 1
% 取餘數。 75 % 60 = 15
:02 格式化成至少兩位數,不足補 0。 5 → 05
簡單記法:
分鐘用 //,秒數用 %,顯示格式用 :02。

✅ 小結

這個簡易倒數計時器,雖然程式碼不長,但一次練到了很多 Python 初學常用觀念。

  • import time:匯入時間模組。
  • time.sleep(1):讓程式暫停 1 秒。
  • input():讓使用者輸入倒數秒數。
  • int():把輸入內容轉成整數。
  • for 迴圈:用來重複倒數。
  • //:計算分鐘。
  • %:計算剩餘秒數。
  • f-string:把分鐘與秒數組合成時間格式。
輸入秒數 → for 迴圈倒數 → 換算分鐘與秒數 → 格式化顯示 → 暫停 1 秒 → 時間到了

只要理解 //% 的分工,就能掌握這支倒數計時器的主要邏輯。

留言

這個網誌中的熱門文章

麻將新手必看!不知道聽什麼牌怎麼辦?超多種實戰聽牌範例,教你怎麼判斷胡牌機會

麻將教學懶人包|從規則到牌理的完整觀念整理(附實戰心得)

【新訓入伍】義務役新兵必看!入伍報到必備清單整理|2026年更新