تابع arange یکی از پرکاربردترین تابع های مورد استفاده در numpy پایتون است! با استفاده از این تابع میتوانیم رنجی از اعداد را تولید کنیم! که در این آموزش با کلی مثال و تمرین به صورت کامل در مورد آن صحبت خواهیم کرد!
قطعه کد زیر رو در نظر بگیرید!
import numpy as np a=np.arange(1,8) print(a)
در خط 1، پکیج numpy رو با اسم مستعار np داریم import میکنیم! (وارد برنامه میکنیم!)
دلیلش هم اینه که اسم numpy یک اسم طولانی است!!!! و حوصله نداریم همچین اسم طولانی رو صدا بزنیم! و در عوض براش یه اسم مستعار مثل np در نظر میگیریم که در ادامه بتونیم سادهتر صداش بزنیم!
در خط دوم هم از همون np (که در واقع همون اسم مستعار numpy بود!) میایم از تابع arange اِش استفاده میکنیم! و میگیم رِنج اعداد 1 تا 7 رو درست کن و بریز توی متغیری به اسم a !
شاید بگید پس چرا نوشتم 1 تا 8؟ مگه نباید بنویسیم 7؟! در اینجا هم مثل تابع range در پایتون، اون عدد آخر حساب نمیشه! یعنی وقتی به پایتون میگیم 1 تا 8 ! پایتون خود 8 رو لحاظ نمیکنه و یکی کمترش رو لحاظ میکنه! (یعنی عملاً اعداد 1 تا 7 دیگه!)
در خط آخر اون کدی که بالا نوشتیم هم که اومدیم متغیر a رو پرینت میکنیم! (چاپ میکنیم!)
حالا فرض کنید میخوایم اعداد 0 تا 25 رو با گام پنج تولید کینم! یعنی اعداد زیر:
0,5,10,15,20,25
که همینطور که میبینید یک دنباله است که جمله اولش 0 است و هِی 5 تا 5 تا داره اضافه میشه! (پس یعنی گام دنباله برابر 5 است!)
برای تعریف همچین چیزی در پایتون داریم:
b=np.arange(0,26,5) print(b)
که در حالت کلی، ساختار کلی این تابع به صورت زیر است!
np.arange(start,stop,step)
که اون start یعنی نقطه شروع دنباله! و stop یعنی نقطه پایان دنباله! [فقط دوباره یادآوری میکنم که پایتون خود اون نقطه پایان رو در نظر نمیگیره و یکی کمترش رو لحاظ میکنه! یعنی اگر در مثال بالا تا 25 میخوایم باید مثلاً وارد کنیم 26 !] و اون step هم که یعنی گام!
پس در مثال بالا start ما برابر 0 و stop ما برابر 26 [چون یکی کمتر رو حساب میکنه، 26 وارد کردیم که یکی کمترش یعنی 25 رو در نظر بگیره!] و step ما برابر 5 است!
یک راهش که تا الان یاد گرفتیم اینه که بنویسیم!:
b=np.arange(0,6) print(b)
یک راه دیگه هم داره! و اون اینکه به صورت زیر بنویسیم!
b=np.arange(6) print(b)
یعنی دقیقاً مثل تابع range که بالاتر لینکش رو هم گذاشتیم و خیلی پیشنیاز مهمی برای این آموزش است! اگر نقطه شروع رو بهش ندیم، خودش پیش فرض صفر قرار میده!
شاید بپرسید پس مینونیم مثال 2 رو به صورت زیر هم بنویسیم؟!
b=np.arange(26,5) print(b)
خیلی واضحه که خیر! چون بنده خدا پایتون الان از کجا بدونه منظور شما از اون 5 گام (step) است و نه stop؟! ولی چون پایتون مهربونه! اگر همین کد رو به صورت زیر هم بنویسید باز بزرگواری میکنه و ازتون قبول میکنه!
b=np.arange(26,step=5) print(b)
یعنی حداقل به این بنده خدا python بفهمونید که اون 5 گام دنباله (step) است! خودش بقیش رو براتون درست میکنه!
1- تابع arange به صورت سه پارامتری:!
np.arange(1,14,2)
عدد اول نقطه شروع! عدد دوم نقطه پایان دنباله! [البته برای 100 اُمین بار یادآوری می شود یکی کمترش لحاظ میشود!] و عدد آخر گامِ دنباله (یا همان step)!
خروجی:
[ 1 3 5 7 9 11 13]
2- تابع arange به صورت دو پارامنری!
np.arange(1,4)
عدد اول نقطه شروع (start) است! و عدد دوم نقطه پایان! [البته برای 500 اُمین بار یادآوری می شود یکی کمترش لحاظ میشود!]
خروجی:
[1 2 3]
3- تابع arange به صورت یک پارامتری!
np.arange(4)
نقطه شروع رو به صورت پیش فرض برابر صفر قرار میده! نقطه پایان رو هم برابر همون عددی که وارد کردیم! (ولی باز هم تاکید میکنم که یکی کمتر از این عددی که ما وارد میکنیم رو در نظر میگیره!)
خروجی:
[0 1 2 3]
4- یک نکته جانبی!
اگر وارد کنیم!
np.arange(31,step=5)
شروع که چون وارد نکردیم برابر صفر در نظر میگیره! و پایان رو هم همون عدد 31 که در بالا وارد کردیم! (البته خودش رو لحاظ نمیکنه و یکی کمترش رو در نظر میگیره!) و step یا گام دنباله رو هم که خودمون صراحتاً گفتیم 5 است!
فکر کنم جمع بندی خوبی بود! ان شاء الله که مفید بوده باشه! در این آموزش هر جا سوالی داشتید میتونید در بخش نظرات بپرسید و مطرح کنید!
تعداد دیدگاه | 0 |
تعداد بازدید | 6.6K |
تاریخ انتشار | 26/07/2019 |
تاریخ بروزرسانی | 26/07/2019 |
نویسنده | گروه آموزشی کولاک |