کتابخانه math پایتون | مسترپای

کتابخانه math پایتون

مدت زمان مطالعه: 10 دقیقه آخرین ویرایش در: 01/03/13 15:21


ریاضیات در برنامه نویسی بخش مهمی هستند.در پایتون، کتابخانه یا ماژولی با نام math وجود دارد که صدها فرمول و فانکشن ریاضی را تعریف کرده و برای ما آماده میکند.در این مطلب با مهمترین بخش های این کتابخونه کار میکنیم.

 

نصب و استفاده

این کتابخونه پیشفرض است، پس نیازی به نصب ندارد.اما برای استفاده این کد را ابتدای کد هایمان مینویسیم :

import math

متغیر ها :

برای شروع با تعدادی از متغیر های این ماژول کار میکنیم.اولین متغیر عدد بینهایت است :

>>> num = math.inf
>>> print(num)
inf
>>> print(100000000<num)
True

این متغیر عدد مشخصی ندارد اما از تمام اعداد بزرگتر است. اما دو متغیر دیگر که دارای عدد هستند :

>>> print(math.pi)
3.141592653589793
>>> print(math.e)
2.718281828459045
>>> print(math.tau)
6.283185307179586

میبنیم که به ترتیب عدد پی(π)، عدد Tau(T)  و عدد e برای ما چاپ میشود.

توابع :

اما مهم تر از متغیر ها در این کتابخانه، توابع هستند.

درباره ک.م.م و ب.م.م با math در این مطلب صحبت کرده ایم پس از آنها میگذریم.

اعداد نزدیک :

این دو تابع نزدیک ترین عدد صحیح به عدد را برمیگردانند. تابع اول عدد کوچکتر یا مساوی و تابع دوم عدد مساوی یا بزرگتر را.

>>> print(math.floor(20)
20
>>> print(math.ceil(19.1)
19
>>> print(math.ceil(19.9)
19
>>> print(math.ceil(20)
20
>>> print(math.ceil(19.1)
20
>>> print(math.ceil(19.9)
20

فاکتوریل :

یکی از بخش های مهم ریاضی فاکتیوریل است (سوالی مربوط به اون توی مسابقات قبلی سایت بود که اهمیت رو نشون میده). فاکتوریل یعنی ضرب اعداد کوچکتر در خود عدد. برای مثال :

فاکتوریل 5 = 1×2×3×4×5

فاکتوریل 2 = 1×2

برای محاسبه فاکتوریل به صورت معمول باید چندخط کد بنویسید از حلقه ها استفاده کنید و... اما با math کافیست بنویسید:

>>> print(mah.factorial(4))
24

استفاده از math نه تنها کدنویسی را راحت تر میکنه بلکه نسبت به کدنویسی با حلقه 0.95 ثانیه سریعتر است. هرچند در یک محاسبه تاثیری ندارد اما اگر در یک برنامه 9 بار به فاکتوریل نیاز داشته باشیم 9.5 ثانیه و اگر به 100 تا نیاز داشته باشیم 1.5 دقیقه سریعتر است.

لگاریتم و جزر:

تابع بعدی لگاریتم است، کدنویسی آن بدون math میتواند خیلی پیچیده باشد. اما با این کتابخانه بسیار ساده است.

لگاریتم درواقع معکوس توان است. یعنی اگر 10*10*10 = 1000 (103 = 1000) پس لگاریتم 1000 بر پایه 3 برابر با 10 است.

برای محاسبه لگاریتم کافیست به ترتیب عدد و پایه را در این تابع قرار دهیم :

>>> print(math.log(8, 2))
3.0

حالا که صحبت از توان شد، جزر یکی از مهمترین محاسبات ریاضی است.که ریشه دوم عدد را نشان میدهد.

یعنی اگر 32 = 9 پس ریشه دوم(جزر) 9 برابر با 3 است.

>>> print(math.sqrt(9))
3.0

نزدیک بودن:

تابع بعدی نزدیک بودن رو مورد بررسی قرار میده.اما چقدر نزدیک؟

>>> print(math.isclose(4,5,abs_tol=1.0))
True
>>> print(math.isclose(3,6,abs_tol=1.0))
False

در کد بالا از برنامه میخواهیم که نزدیک بودن دو عدد را را چک کند.برای چک کردن فاصله کمتر از 1 را نزدیک حساب میکند.

اگر بخواهیم نزدیک بودن را کمتر از 5 فاصله در نظر بگیریم :

>>> print(math.isclose(3,7,abs_tol=5.0))
True

توابع بی استفاده :

در پایان هم دو تابع معرفی میکنم که در math وجود دارند اما بدون آن ها هم میتوان در یک خط کد جواب را به دست آورد :

توان :

>>> print(math.pow(2,3))
8
>>> print(2**3)
8

قطع کردن :

>>> print(math.trunc(14.6))
14
>>> print(int(14.6))
14

درباره این دوتابع نیز استفاده از روش پیشفرض در اکثر مواقع مناسب تر است.

 

امیدوارم این مقاله مفید بوده باشه، در این کتابخونه توابع دیگری نیز هستند که مربوط به ریاضیات پیشرفته میشوند. اگر از این مطلب خوشتون اومد در قسمت نظرات بگید تا قسمت دوم هم هرچه سریعتر قرار بگیره.



3
user نوشته شده توسط محمدصدرا عبدالعلی زاده من صدرام!! پایتون دوست دارم :) و یکساله که دارم باهاش کار میکنم 3>


دیدگاه


برای ثبت دیدگاه، وارد شوید