TEACHIFY Telegram 4183
برنامه نویسی | Teachify
Photo
✔️ ماژول functools و توابع partial و partialmethod

حتماً براتون پیش اومده که بخواین تابعی بسازین که بعضی از آرگومان‌هاش همیشه مقدار ثابتی دارن، ولی نخوایین هر بار اون مقدارها رو دستی بدین!

اینجاست که دو قهرمان وارد می‌شن:
functools.partial
functools.partialmethod

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

مثال ساده:
from functools import partial

def power(base, exponent):
    return base ** exponent

# ایجاد تابعی که همیشه توان 2 می‌گیره
square = partial(power, exponent=2)

print(square(5))  # خروجی: 25

اینجا تابع square مثل power(base, 2) عمل می‌کنه.
در واقع، partial کمک می‌کنه تا توابع جدیدی بسازیم بدون تکرار کد و با آرگومان‌های از پیش تنظیم‌شده

تابع partialmethod
اما اگه بخوای این کار رو داخل کلاس انجام بدی، باید از partialmethod استفاده کنی.

مثال:
from functools import partialmethod

class MathOps:
    def power(self, base, exponent):
        return base ** exponent

    square = partialmethod(power, exponent=2)

m = MathOps()
print(m.square(5))  # خروجی: 25

در اینجا partialmethod مثل partial عمل می‌کنه ولی مخصوص متدهای کلاس هست.
اون به‌صورت خودکار self رو مدیریت می‌کنه، چیزی که partial در متدها نمی‌تونه انجام بده.

@Teachify | برنامه نویسی
👍32



tgoop.com/teachify/4183
Create:
Last Update:

✔️ ماژول functools و توابع partial و partialmethod

حتماً براتون پیش اومده که بخواین تابعی بسازین که بعضی از آرگومان‌هاش همیشه مقدار ثابتی دارن، ولی نخوایین هر بار اون مقدارها رو دستی بدین!

اینجاست که دو قهرمان وارد می‌شن:
functools.partial
functools.partialmethod

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

مثال ساده:

from functools import partial

def power(base, exponent):
    return base ** exponent

# ایجاد تابعی که همیشه توان 2 می‌گیره
square = partial(power, exponent=2)

print(square(5))  # خروجی: 25

اینجا تابع square مثل power(base, 2) عمل می‌کنه.
در واقع، partial کمک می‌کنه تا توابع جدیدی بسازیم بدون تکرار کد و با آرگومان‌های از پیش تنظیم‌شده

تابع partialmethod
اما اگه بخوای این کار رو داخل کلاس انجام بدی، باید از partialmethod استفاده کنی.

مثال:
from functools import partialmethod

class MathOps:
    def power(self, base, exponent):
        return base ** exponent

    square = partialmethod(power, exponent=2)

m = MathOps()
print(m.square(5))  # خروجی: 25

در اینجا partialmethod مثل partial عمل می‌کنه ولی مخصوص متدهای کلاس هست.
اون به‌صورت خودکار self رو مدیریت می‌کنه، چیزی که partial در متدها نمی‌تونه انجام بده.

@Teachify | برنامه نویسی

BY برنامه نویسی | Teachify




Share with your friend now:
tgoop.com/teachify/4183

View MORE
Open in Telegram


Telegram News

Date: |

Write your hashtags in the language of your target audience. Telegram desktop app: In the upper left corner, click the Menu icon (the one with three lines). Select “New Channel” from the drop-down menu. Clear Image: Telegram. Add up to 50 administrators
from us


Telegram برنامه نویسی | Teachify
FROM American