免費開始練習
普通考試 115年 [電信工程] 計算機概要

第 24 題

下列何者為本 Python 程式之輸出?\ntw_one = "Taiwan No. One."\nprint(tw_one[2:6])
  • A . On
  • B an No. One
  • C wan N
  • D iwan

思路引導 VIP

若將字串中的每個字元(包含空格與標點)從左至右標上由 0 開始的編號,請思考一下,表達式中冒號左邊的數字代表擷取的起點,而右邊的數字則代表擷取在哪個編號「之前」停止?這兩個數字之間的間隔,與最終輸出的字元長度有什麼數學關係嗎?

🤖
AI 詳解 AI 專屬家教

很高興看到你精準地鎖定了正確答案。這題的核心在於測試你對 Python **字串切片(String Slicing)**機制的理解。在工程邏輯中,索引(Indexing)的定義至關重要,而 Python 採用的是從 0 開始的索引系統。字串 tw_one = "Taiwan No. One." 的每個字元位置分別為:T 是 0、a 是 1、i 是 2、w 是 3、a 是 4、n 是 5、空格則為 6。

切片區間的定義與範圍

當我們執行 tw_one[2:6] 時,語法遵循的是 $[start:stop]$ 的原則,其中 包含起點(inclusive)但不包含終點(exclusive)。因此,程式會從索引 2 的字元 i 開始擷取,一路選取到索引 5 的 n 為止,而索引 6 的空格則被排除在外。最終結果即為 iwan。這類題目雖然基礎,但極具鑑別度,主要考驗工程師在處理資料邊界時是否具備「$0$ 索引」與「左閉右開」的概念,這也是避免程式出現 差一錯誤(Off-by-one error) 的基本功。

🏷️ 相關主題

程式設計與資料庫系統
查看更多「[電信工程] 計算機概要」的主題分類考古題