您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“Python clip與range函數(shù)怎么使用”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Python clip與range函數(shù)怎么使用”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。
range函數(shù)的作用是生成一個(gè)起始值為start,終值不超過stop,步長(zhǎng)為step的等差數(shù)列。range函數(shù)的基本調(diào)用語(yǔ)法如下:
range(start, stop[, step])
start:數(shù)組的起始值,可省略,默認(rèn)值為0。
stop:數(shù)組的上限,生成不超過該值的等差數(shù)列。
step:步長(zhǎng),可省略,默認(rèn)值為1,即數(shù)組中前后兩個(gè)數(shù)的差值。
for i in range(6): print(i)
得到結(jié)果:
0
1
2
3
4
5
可以發(fā)現(xiàn)range函數(shù)可以省略初始值start(默認(rèn)值為0)和步長(zhǎng)step(默認(rèn)值為1),并取默認(rèn)值生成等差數(shù)列。
for i in range(5, 16, 2): print(i)
得到結(jié)果:
5
7
9
11
13
15
可以發(fā)現(xiàn)range函數(shù)生成了一個(gè)初始值為5,終值不超過16(最大化),步長(zhǎng)為2的等差數(shù)列。
random.randint函數(shù)是numpy庫(kù)中的,通常需要先加載numpy庫(kù),再調(diào)用該函數(shù)。函數(shù)的基本調(diào)用語(yǔ)法如下:
import numpy as np np.random.randint(low, high=None, size=None, dtype=int)
low:隨機(jī)生成的數(shù)要大于等于該值。
high:隨機(jī)生成的數(shù)要小于該值。
size:控制隨機(jī)數(shù)的尺寸,省略時(shí)默認(rèn)輸出單個(gè)整數(shù)。
random.randint函數(shù)的作用是返回一個(gè)隨機(jī)整型數(shù)或整型數(shù)組或整型數(shù)據(jù)框。
范圍從low(含)到high(不含),即[low, high)。如果未寫參數(shù)high的值,則數(shù)據(jù)范圍為[0, low)。
for i in range(5): print(np.random.randint(6))
得到結(jié)果:
0
1
5
1
4
可以發(fā)現(xiàn)random.randint函數(shù)中若只有一個(gè)數(shù),則生成一個(gè)數(shù)據(jù)范圍為[0, 該數(shù))的整數(shù)。
np.random.randint(-2, 9, (1,6))
得到結(jié)果:
array([[ 6, 0, 6, -1, -2, 2]])
可以發(fā)現(xiàn)random.randint函數(shù)中的size取值可以控制數(shù)據(jù)的維度。第一個(gè)數(shù)指數(shù)據(jù)的行數(shù),第二個(gè)數(shù)指數(shù)據(jù)的列數(shù)。例2生成一個(gè)1行6列的數(shù)組。
np.random.randint(5, 10, (3, 5))
得到結(jié)果:
array([[6, 8, 8, 5, 8],
[6, 9, 9, 7, 9],
[9, 7, 7, 7, 8]])
可以發(fā)現(xiàn)random.randint函數(shù)中的size取值可以控制數(shù)據(jù)的維度。第一個(gè)數(shù)指數(shù)據(jù)的行數(shù),第二個(gè)數(shù)指數(shù)據(jù)的列數(shù)。例3生成一個(gè)3行6列的數(shù)據(jù)框。
clip函數(shù)是numpy庫(kù)中的,通常需要先加載numpy庫(kù),再調(diào)用該函數(shù)。clip函數(shù)的基本調(diào)用語(yǔ)法如下:
import numpy as np np.clip(a, a_min, a_max, out=None, **kwargs)
a:數(shù)組或數(shù)據(jù)框。
a_min:下界,區(qū)間的最小值,a中比a_min小的數(shù)都會(huì)強(qiáng)制變成a_min。
a_max:上界,區(qū)間的最大值,a中比a_max大的數(shù)都會(huì)強(qiáng)制變成a_max。
out:可以指定輸出矩陣的對(duì)象,shape與a相同。
該函數(shù)的作用是將a中的所有數(shù)限定到a_min和a_max這個(gè)區(qū)間中,超出這個(gè)區(qū)間的值都被截?cái)嘣O(shè)置成界限值。
a = np.array(range(1, 10)) a_min = 3 a_max = 8 print(a) print('======compare======') print(np.clip(a, a_min, a_max))
得到結(jié)果:
[1 2 3 4 5 6 7 8 9]
======compare======
[3 3 3 4 5 6 7 8 8]
compare之前的是原始值,之后的是用clip函數(shù)截取之后的值。可以發(fā)現(xiàn)clip函數(shù)把數(shù)組中小于a_min和大于a_max的值都強(qiáng)制變成了界限值。
a = np.random.randint(20, 50, (4, 4)) a_min = 30 a_max = 40 print(a) print('====compare====') print(np.clip(a, a_min, a_max))
得到結(jié)果:
[[40 39 35 21]
[29 44 36 46]
[47 40 40 26]
[24 24 26 44]]
====compare====
[[40 39 35 30]
[30 40 36 40]
[40 40 40 30]
[30 30 30 40]]
可以發(fā)現(xiàn)clip函數(shù)把數(shù)據(jù)框中小于a_min和大于a_max的值都強(qiáng)制變成了界限值。
讀到這里,這篇“Python clip與range函數(shù)怎么使用”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。