目錄
Python 中 range() 函數的威力
在 Python 中,range() 函數是生成數值序列的重要工具,尤其在迴圈中非常有用。它允許你指定起始值、結束值和步長,使得數值序列的生成變得靈活多變。在這篇文章中,我們將深入探討 range() 函數的使用方法,包括最新的語法、實作範例及常見錯誤排除,幫助你掌握這個強大的工具。
range() 函數的基本語法
range() 函數的基本語法如下:
range(start, stop, step)
- start: 數值序列的開始值(默認為 0)。
- stop: 數值序列的結束值(不包含該值)。
- step: 每次迭代的步長(默認為 1)。
實作範例
以下是幾個使用 range() 函數的範例:
範例 1: 基本用法
假設我們想要建立一個從 0 到 10 的數值序列,每次迭代步長為 2:
for i in range(0, 11, 2):
print(i)
輸出將會是:
0
2
4
6
8
10
範例 2: 只指定結束值
如果只指定一個參數,則會建立一個從 0 到指定參數的數值序列,每次迭代步長為 1:
for i in range(10):
print(i)
輸出將會是:
0
1
2
3
4
5
6
7
8
9
範例 3: 使用負數步長
你也可以使用負數來指定步長,例如:
for i in range(10, 0, -1):
print(i)
輸出將會是:
10
9
8
7
6
5
4
3
2
1
錯誤排除
在使用 range() 函數時,常見的錯誤包括:
- 忘記指定 stop 值,導致無法生成序列。
- 使用不正確的步長,例如使用 0 作為步長,這會引發 ValueError。
延伸應用
除了基本用法,range() 函數還可以與其他 Python 函數結合使用,例如:
- 將其與 list() 函數結合,生成列表:
list(range(5))
會產生[0, 1, 2, 3, 4]
。 - 在列表解析中使用,簡化代碼:
[x for x in range(5)]
會生成相同的結果。
總結
Python 的 range() 函數是生成數值序列的強大工具,能夠靈活地設定起始值、結束值及步長。掌握這個函數後,你將能在編寫迴圈時更加自如。
Q&A(常見問題解答)
Q: range() 函數的返回值是什麼?
A: range() 函數返回的是一個可迭代的範圍對象,這個對象可以用於迴圈中進行迭代。
Q: 如何將 range() 的返回值轉換為列表?
A: 可以使用 list() 函數,例如:list(range(5))
,這將返回 [0, 1, 2, 3, 4]
。
Q: range() 函數可以使用浮點數嗎?
A: 不可以,range() 函數僅支持整數作為參數。如果需要浮點數,建議使用 NumPy 的 numpy.arange()
函數。
更新日期:2025/06/01
—