تابع linspace در numpy پایتون ، گروهی از اعداد صحبح رو درست میکنه که فاصله یکسانی از هم دارند! در این آموزش به طور کامل و با مثال با ساختار این تابع آشنا میشیم!
پس گفتیم اعداد با فاصله یکسان تولید میکنه! و اصلاً در اسم linspace اون lin مخفف linear و space هم یعنی فاصله! یعنی اعدادی با فاصله خطی (یا یکسان) تولید میکنه!
فرض کنید میخوایم بین بازه 5 تا 14، 7 تا عدد با فاصله یکسان از هم بسازیم! برای این کار داریم!
import numpy as np b=np.linspace(5,14,7) print(b)
در خط اول که خود پکیج numpy رو داریم وارد برنامه میکنیم! (البته با اسم مستعار np! چون خود numpy برای صدا زدن، اسم طولانی است، از اسم مستعار کوتاهتر np استفاده کردیم!)
در خط دوم، با استفاده از تابع linspace از پکیج numpy (همون np اسم مستعار numpy است دیگه!) 7 عدد در بازه 5 تا 14 ایجاد میکنیم!
و در خط سوم هم آنچه در خط دوم تعریف کرده بودیم رو چاپ میکنیم! جواب میشه:!
[ 5. 6.5 8. 9.5 11. 12.5 14. ]
اگر از آموزش تابع range در پایتون، یادتون باشه! وقتی مثلاً مینوشتیم!:
range(5,14)
تاکید میکردیم که اون 14 آخر رو حساب نمیکنه و یکی کمترش رو حساب میکنه! یعنی عملاً تابع فوق اعداد 5 تا 13 رو میداد!
نکته: به عنوان یک استثناء یادتون باشه که تابع linspace، اون عدد آخر رو حساب میکنه!
یعنی اگر بگید 5 تا 14، خود 14 رو هم حساب میکنه!
مثلاً وقتی مینویسیم
linspace(5,14,7)
میدونیم که از عدد 5 تا 14، 7 تا عدد با فاصله مساوی از هم میسازه! اما شاید دوست داشته باشیم این فاصله مساوی رو بدونیم چنده؟!
برای اینکار داریم:!
c=np.linspace(5,14,7,retstep=True) print(c)
که فقط یک ورودی دیگه به تابع دادیم! و گفتیم retstep رو برابر True قرار بده! (retstep مخفف، return step است! به معنی برگرداندن گام [step یعنی گام]!)
یعنی عملاً میگیم گام (یا همان step) را هم برگردان! (return کن!)
و توجه کنید که اسم اون چیز میزایی که تعریف کردیم رو c گذاشتیم! (یعنی همهی اون دم و دستگاه رو ریختیم توی متغیری به اسم c !) [با این اسم متغیر یکم جلوتر کار داریم!]
که نتیجه اجرای کد بالا میشه:!
(array([ 5. , 6.5, 8. , 9.5, 11. , 12.5, 14. ]), 1.5)
که یک آرایه است با دو مولفه! مولفه اول که همون 7 تا عددی است که از 5 تا 14 ساخته! و مولفه دوم هم همون گام است!
اگر بخوایم فقط گام رو بهمون نشون بده میگیم:!
print(c[1])
اگر یادتون باشه کمی بالاتر گفتیم، اسم متغیر c است! یعنی همون چیزی که مولفه اولش اون 7 تا عدد است و مولفه دومش گام هست رو اسمش رو گذاشتیم c ! [به خطوط بالایی مراجعه کنید تا ببینید که ما گفتیم و اشاره کردیم که این اسم یادتون باشه!]
حالا میگیم مولفه دوم این c رو بهمون نشون بده! (توجه کنید که اندیس گذاری در پایتون از 0 است! پس مولفه دوم با زبوووون پایتون میشه مولفه 1 ام!)
حالا اگر صرفا خود اون 7 تا عدد رو بخوایم از متغیر c بکشیم بیرون باید بگیم:!
print(c[0])
همین!
اگر به تابع linspace فقط دو پارامتر بدیم! یعنی مثلاً:
d=np.linspace(5,14) print(d)
میاد و تعداد عددهایی که به طور پیش فرض باید بین عدد 5 تا 14 بسازه رو 50 در نظر میگیره!
تعداد دیدگاه | 0 |
تعداد بازدید | 7.6K |
تاریخ انتشار | 27/07/2019 |
تاریخ بروزرسانی | 27/07/2019 |
نویسنده | گروه آموزشی کولاک |