برنامه نویسی و طراحی سایت

تبدیل واحدها در پایتون — به زبان ساده + کد

تبدیل واحدها در پایتون — به زبان ساده + کد

در برخی کشورها، طول با واحد «متر» اندازه‌گیری‌ می‌شود، در حالی که در برخی کشورهای دیگر این اندازه‌گیری با واحد «فوت» انجام می‌یابد. اگر بخواهید این واحدها را به همدیگر تبدیل کنید، باید این کار را با دقت مضاعفی انجام دهید، چون ممکن است همه چیز به هم بریزد. اگر با زبان برنامه‌نویسی پایتون کار می‌کنید، خبر خوب این است که یک پکیج اختصاصی به این منظور توسعه یافته است که «پاینت» (Pint) نام دارد. در این مطلب با روش تبدیل واحدها در پایتون آشنا خواهیم شد.

فهرست مطالب این نوشته
پاینت چیست؟

نصب پاینت

سخن پایانی

faradars mobile

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

تبدیل واحدها در پایتون

پاینت چیست؟

پاینت یک پکیج پایتون است که برای کار کردن و دستکاری کردن کمیت‌های فیزیکی ساخته شده است. می‌دانیم که کمیت‌‌های فیزیکی حاصل ضرب یک مقدار عددی در یک واحد اندازه‌گیری هستند. با استفاده از پاینت می‌توانید بین این واحد‌های مختلف تبدیل کنید و یا مستقیماً عملیات ریاضی را روی کمیت‌های متفاوت انجام دهید.

آموزش برنامه نویسی پایتون Python – مقدماتی

آموزش برنامه نویسی پایتون Python – مقدماتی
فیلم آموزش برنامه نویسی پایتون Python – مقدماتی در تم آف

کلیک کنید

پاینت به همراه فهرستی جامعی از واحدهای فیزیکی، پیشوندها و ثوابت توزیع یافته است. با این حال به دلیل ماهیت ماژولارش می‌توانید این فهرست را بدون نیاز به دست بردن در سورس کد، بسط داده و یا حتی بازنویسی کنید. پاینت از بسیاری از عملیات ریاضی «نامپای» (Numpy) نیز پشتیبانی می‌کند.

  • مطلب پیشنهادی برای مطالعه: آشنایی با ماژول Math در پایتون — از صفر تا صد

نصب پاینت

برای نصب پاینت از دستور زیر استفاده کنید:

pip install pint

پس از نصب می‌توانید از رجیستری واحد درون این پکیج بهره بگیرید.

import pint
ureg = pint.UnitRegistry()

این «رجیستری واحد» شیء اصلی است که با آن تعامل پیدا می‌کنیم. با استفاده از آن می‌توانیم کمیت‌هایی را تعریف کنیم که بزرگی دارند و واحدی نیز به آن‌ها الصاق شده است. برای نمونه می‌توانید با چند عمل حسابی ساده واحدهای متر و سانتی‌متر را با هم جمع بزنید.

3 * ureg.meter + 4 * ureg.cm
# 3.04 meter

نتیجه کد فوق، یک شیء است که می‌تواند برای تبدیل کمیت به واحد دیگری استفاده شود.

(3 * ureg.meter + 4 * ureg.cm).to(ureg.feet)
# 9.9737 foot

پکیج پاینت امکان ایجاد واحدها را به طور پویا نیز فراهم ساخته است. برای نمونه سرعت بر حسب مسافت تقسیم بر زمان تعریف می‌شود.

60 * ureg.miles / ureg.hour
# 60.0 mile/hour

شما می‌توانید این کمیت را به واحد متر بر دقیقه تبدیل کنید.

(60 * ureg.miles / ureg.hour).to(ureg.meters/ureg.minute)
# 1609.344 meter/minute

همچنین می‌توانید از رشته‌ها برای تعریف واحد استفاده کنید. شاید گاهی اوقات انجام این کار آسان‌تر باشد.

ureg("meter/second**2") * 10 * ureg("seconds")
# 10.0 meter/second

نکته دیگری که در زمان استفاده از پکیج پاینت بهتر است به آن توجه کنیم، این است که امکان تعریف واحد‌های جدید نیز وجود دارد.

ureg.define("dog_year = 52 * day = dy")
(5 * ureg("years").to(ureg("dog_year")))
# 35.1201 dog_year

این کتابخانه، واحدهای زیادی دارد و با کمی کاوش در آن شگفت‌زده خواهید شد. همچنین می‌توانید خصوصیات یک واحد را به شیوه زیر به دست آورید.

(60 * ureg.miles / ureg.hour).magnitude
# 60.0
(60 * ureg.miles / ureg.hour).units
# mile/hour
(60 * ureg.miles / ureg.hour).dimensionality
# 

سخن پایانی

اگر در زمینه علوم داده فعال هستید و یا هر استفاده علمی از زبان برنامه‌نویسی پایتون می‌کنید، با نصب و به‌کارگیری کتابخانه پاینت می‌توانید از بسیاری از مشکلاتی که ممکن است تبدیل واحدها برای شما پیش بیاورد، اجتناب نمایید. کار با پاینت آسان است و موجب بهبود چشمگیری در زمان و تلاش مورد نیاز برای کدنویسی محاسبات علمی می‌شود.

مجموعه آموزش برنامه نویسی پایتون (Python)
فیلم مجموعه آموزش برنامه نویسی پایتون (Python) در تم آف

کلیک کنید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.