Code source de تقدیر.مقام

import datetime

from .ذرائع import مرکسم۵_جال, مرکسم۵, ناسا
from .ذریعہ import ذریعہ
from .کام import بلندی_پانا
from .کوائف import کوائف


[docs]class مقام(object): """ ایک مقام، جس کے ليے آب وہوا کے کوائف درکار ہيں۔ """ def __init__(خود, عرض, طول, بلندی=None): خود.بلندی = بلندی if بلندی is not None else بلندی_پانا(عرض, طول) خود.طول = طول خود.عرض = عرض
[docs] def کوائف_پانا(خود, سے, تک, ذرائع=None, خاکے='۸.۵'): """ آبوہوا کے کوائف ليناا۔ Parameters ---------- سے: str | datetime.date وہ تاریخ جب سے کوائف چاہيں۔ تک: str | datetime.date وہ تاریخ جب تک کوائف چاہيں۔ ذرائع: ذریعہ | list وہ ذرائع جن سے کوائف لينےا ہيں۔ یا :class:`~تقدیر.ذریعہ.ذریعہ`، یا انکی فہرست ہو سکتی ہے۔ خاکے: str | float آب وہوا کی تبدیلی کے خاکے۔مثال کے طور پر ۸۔۵ Returns ------- کوائف آب وہوا کے :class:`~تقدیر.کوائف.کوائف`۔ """ # ذرائع کی تیاری ذرائع = ذرائع_بنانا(ذرائع) متغیرات = {م for ذ in ذرائع for م in ذ.متغیرات} # ھر ذریعہ کے کوائف پانا اعداد = کوائف(None, سے, تک, متغیرات=متغیرات) for ذر in ذرائع: نئے = ذر.کوائف_پانا(سے, تک, خود.عرض, خود.طول, خود.بلندی, خاکے=خاکے) if نئے is not None: اعداد += نئے # رکنا اگر نامعلوم کچھ نہیں یے if اعداد.لاپتہ().size == 0: break return اعداد
def ذرائع_بنانا(ذرائع): # ذرائع کی تیاری ذرائع = ذرائع or [] if isinstance(ذرائع, ذریعہ): ذرائع = [ذرائع] if isinstance(ذرائع, list): ذرائع = ذرائع + [ناسا(), مرکسم۵(), مرکسم۵_جال()] return ذرائع