Python?clip與range函數(shù)保姆級使用教程
你應(yīng)該聽說過,應(yīng)用Python,可以讓你處理一天的重復(fù)工作量,縮短到幾分鐘甚至更短。從此解放上班時間,研究更多更有效率的工作方法。進(jìn)一步提升工作效率,讓工作更出彩。這不是廣告,這是實(shí)錘圖片。
本文和你一起探索Python常用函數(shù)合集,讓你以最短的時間明白這些函數(shù)的原理。也可以利用碎片化的時間鞏固這些函數(shù),讓你在處理工作過程中更高效。
一、range函數(shù)的定義
range函數(shù)的作用是生成一個起始值為start,終值不超過stop,步長為step的等差數(shù)列。range函數(shù)的基本調(diào)用語法如下:
range(start, stop[, step])
start:數(shù)組的起始值,可省略,默認(rèn)值為0。
stop:數(shù)組的上限,生成不超過該值的等差數(shù)列。
step:步長,可省略,默認(rèn)值為1,即數(shù)組中前后兩個數(shù)的差值。
二、range函數(shù)實(shí)例
省略起始值start和步長step
for i in range(6): print(i)
得到結(jié)果:
0
1
2
3
4
5
可以發(fā)現(xiàn)range函數(shù)可以省略初始值start(默認(rèn)值為0)和步長step(默認(rèn)值為1),并取默認(rèn)值生成等差數(shù)列。
設(shè)置初始值終值和步長
for i in range(5, 16, 2): print(i)
得到結(jié)果:
5
7
9
11
13
15
可以發(fā)現(xiàn)range函數(shù)生成了一個初始值為5,終值不超過16(最大化),步長為2的等差數(shù)列。
三、random.randint函數(shù)的定義
random.randint函數(shù)是numpy庫中的,通常需要先加載numpy庫,再調(diào)用該函數(shù)。函數(shù)的基本調(diào)用語法如下:
import numpy as np np.random.randint(low, high=None, size=None, dtype=int)
low:隨機(jī)生成的數(shù)要大于等于該值。
high:隨機(jī)生成的數(shù)要小于該值。
size:控制隨機(jī)數(shù)的尺寸,省略時默認(rèn)輸出單個整數(shù)。
random.randint函數(shù)的作用是返回一個隨機(jī)整型數(shù)或整型數(shù)組或整型數(shù)據(jù)框。
范圍從low(含)到high(不含),即[low, high)。如果未寫參數(shù)high的值,則數(shù)據(jù)范圍為[0, low)。
四、random.randint函數(shù)實(shí)例
隨機(jī)生成5個[0, 6)之間的整數(shù)
for i in range(5): print(np.random.randint(6))
得到結(jié)果:
0
1
5
1
4
可以發(fā)現(xiàn)random.randint函數(shù)中若只有一個數(shù),則生成一個數(shù)據(jù)范圍為[0, 該數(shù))的整數(shù)。
隨機(jī)生成[-2, 9)之間1維數(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ù)的維度。第一個數(shù)指數(shù)據(jù)的行數(shù),第二個數(shù)指數(shù)據(jù)的列數(shù)。例2生成一個1行6列的數(shù)組。
隨機(jī)生成[5, 10)之間的3行5列數(shù)據(jù)框
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ù)的維度。第一個數(shù)指數(shù)據(jù)的行數(shù),第二個數(shù)指數(shù)據(jù)的列數(shù)。例3生成一個3行6列的數(shù)據(jù)框。
五、clip函數(shù)的定義
clip函數(shù)是numpy庫中的,通常需要先加載numpy庫,再調(diào)用該函數(shù)。clip函數(shù)的基本調(diào)用語法如下:
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ù)都會強(qiáng)制變成a_min。
a_max:上界,區(qū)間的最大值,a中比a_max大的數(shù)都會強(qiáng)制變成a_max。
out:可以指定輸出矩陣的對象,shape與a相同。
該函數(shù)的作用是將a中的所有數(shù)限定到a_min和a_max這個區(qū)間中,超出這個區(qū)間的值都被截?cái)嘣O(shè)置成界限值。
六、clip函數(shù)實(shí)例
把數(shù)組中的值應(yīng)用clip函數(shù)進(jìn)行截取
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ù)截取之后的值??梢园l(fā)現(xiàn)clip函數(shù)把數(shù)組中小于a_min和大于a_max的值都強(qiáng)制變成了界限值。
把數(shù)據(jù)框中的值應(yīng)用clip函數(shù)進(jìn)行截取
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)制變成了界限值。
到此這篇關(guān)于Python clip與range函數(shù)保姆級使用教程的文章就介紹到這了,更多相關(guān)Python clip與range 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python程序?qū)崿F(xiàn)向MySQL存放圖片
這篇文章主要介紹了Python程序?qū)崿F(xiàn)向MySQL存放圖片,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03Python開發(fā)游戲自動化后臺腳本的實(shí)現(xiàn)
本文主要介紹了Python開發(fā)游戲自動化后臺腳本的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01python利用Opencv實(shí)現(xiàn)人臉識別功能
這篇文章主要為大家詳細(xì)介紹了python利用Opencv實(shí)現(xiàn)人臉識別功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-04-04基于Python3中運(yùn)算符 **和*的區(qū)別說明
這篇文章主要介紹了Python3中運(yùn)算符 **和*的具體區(qū)別,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05python 將視頻 通過視頻幀轉(zhuǎn)換成時間實(shí)例
這篇文章主要介紹了python 將視頻 通過視頻幀轉(zhuǎn)換成時間實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04淺談numpy中函數(shù)resize與reshape,ravel與flatten的區(qū)別
這篇文章主要介紹了淺談numpy中函數(shù)resize與reshape,ravel與flatten的區(qū)別介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06自己搭建resnet18網(wǎng)絡(luò)并加載torchvision自帶權(quán)重的操作
這篇文章主要介紹了自己搭建resnet18網(wǎng)絡(luò)并加載torchvision自帶權(quán)重的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05