python中內(nèi)置函數(shù)range詳解
前言
內(nèi)置函數(shù) range()
- range()函數(shù)的作用:
Python內(nèi)置函數(shù)range()是一個(gè)用于生成一系列連續(xù)的整數(shù)的函數(shù)。它常用于循環(huán)結(jié)構(gòu)中,用于指定循環(huán)的次數(shù)或迭代的范圍。
- 常用的語法:
range(start, stop, step)
其中:
start(可選):開始的整數(shù)值,默認(rèn)為0。
stop:結(jié)束的整數(shù)值(不包含此值)。
step(可選):步長,默認(rèn)為1。
- 返回值
range()函數(shù)會返回一個(gè)range對象,你可以將其轉(zhuǎn)換成列表(list)或迭代它以獲取一系列整數(shù)。
- range類型的優(yōu)點(diǎn):
不管range對象表示的整數(shù)序列有多長,所有range對象占用的內(nèi)存空間都是相同的。因?yàn)閮H僅需要存儲start,stop,step, 只有當(dāng)用到range對象時(shí),才會去計(jì)算序列中的相關(guān)元素。
in 和not in 可以判斷整數(shù)序列中是否存在指定的整數(shù)。
三種創(chuàng)建方式
1. 只有一個(gè)參數(shù)的情況
此時(shí)默認(rèn)從零開始,生成默認(rèn)步長為1的序列
當(dāng)range()函數(shù)只有一個(gè)參數(shù)時(shí),該參數(shù)代表的是結(jié)束的整數(shù)值(不包含此值),起始值默認(rèn)為0,步長默認(rèn)為1。這種情況下的語法如下:
range(stop)
# 生成0到4的整數(shù)序列
for i in range(5):
print(i) # 輸出:0, 1, 2, 3, 4
# 將range對象轉(zhuǎn)換成列表
numbers = list(range(5))
print(numbers) # 輸出:[0, 1, 2, 3, 4]2. 給定兩個(gè)參數(shù)的情況
當(dāng)range()函數(shù)給定兩個(gè)參數(shù)時(shí),第一個(gè)參數(shù)代表起始的整數(shù)值,第二個(gè)參數(shù)代表結(jié)束的整數(shù)值(不包含此值),步長默認(rèn)為1。這種情況下的語法如下:
range(start, stop)
r=range(1,10) ## 給定了起始值,從1開始到10結(jié)束。此時(shí)不包含10,默認(rèn)步長為1
生成2到6(不包含6)的整數(shù)序列
for i in range(2, 6):
print(i) # 輸出:2, 3, 4, 5
# 將range對象轉(zhuǎn)換成列表
numbers = list(range(2, 6))
print(numbers) # 輸出:[2, 3, 4, 5]3. 三個(gè)參數(shù)都給定的時(shí)候
當(dāng)range()函數(shù)給定三個(gè)參數(shù)時(shí),第一個(gè)參數(shù)代表起始的整數(shù)值,第二個(gè)參數(shù)代表結(jié)束的整數(shù)值(不包含此值),第三個(gè)參數(shù)代表步長。這種情況下的語法如下:
range(start, stop, step)
以下是使用range()函數(shù)給定三個(gè)參數(shù)的示例:
# 生成1到10(不包含10)的偶數(shù)序列
for i in range(1, 10, 2):
print(i) # 輸出:1, 3, 5, 7, 9
# 將range對象轉(zhuǎn)換成列表
numbers = list(range(1, 10, 2))
print(numbers) # 輸出:[1, 3, 5, 7, 9]使用in和not in 來判斷指定的整數(shù)是否存在
1. 判斷range生成的序列中是否存在指定的值
# 判斷整數(shù)是否存在于range對象中 numbers = range(1, 10, 2) print(1 in numbers) # 輸出:True print(6 not in numbers) # 輸出:True # 判斷范圍內(nèi)的值是否存在于range對象中 r = range(10, 20) print(15 in r) # 輸出:True print(25 not in r) # 輸出:True
我們使用in運(yùn)算符判斷特定的整數(shù)是否存在于range對象中。同時(shí),我們使用not in運(yùn)算符來判斷某個(gè)值是否不存在于range對象中。需要注意的是,當(dāng)使用in或not in運(yùn)算符判斷一個(gè)值是否存在于range對象中時(shí),會遍歷整個(gè)序列進(jìn)行搜索。因此,如果range對象的范圍非常大,這樣的搜索可能會消耗大量的時(shí)間和內(nèi)存。所以,你可以使用in和not in運(yùn)算符來判斷一個(gè)特定的值是否存在于range對象的序列中,并根據(jù)返回的布爾值進(jìn)行相應(yīng)的處理。
2. in 和not in 不與range結(jié)合的情況
# 列表
fruits = ['apple', 'banana', 'orange']
print('apple' in fruits) # 輸出:True
print('grape' not in fruits) # 輸出:True
# 字符串
message = 'Hello, world!'
print('world' in message) # 輸出:True
print('Python' not in message) # 輸出:True總結(jié)
到此這篇關(guān)于python之內(nèi)置函數(shù)range的文章就介紹到這了,更多相關(guān)python內(nèi)置函數(shù)range內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python函數(shù)實(shí)例萬花筒實(shí)現(xiàn)過程
這篇文章主要為大家介紹了python函數(shù)實(shí)例萬花筒實(shí)現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
Python實(shí)現(xiàn)語音轉(zhuǎn)文本的兩種方法
這篇文章主要給大家介紹了關(guān)于Python實(shí)現(xiàn)語音轉(zhuǎn)文本的兩種方法,Python提供了許多工具和庫來進(jìn)行這些任務(wù),本文通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-06-06
使用anaconda安裝pytorch的實(shí)現(xiàn)步驟
這篇文章主要介紹了使用anaconda安裝pytorch的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
python簡單實(shí)現(xiàn)插入排序?qū)嵗a
在本篇文章里小編給大家整理了一篇關(guān)于python簡單實(shí)現(xiàn)插入排序?qū)嵗a,有需要的朋友們可以學(xué)習(xí)參考下。2020-12-12

