مانند هر زبان برنامه نویسی دیگر در پایتون می توان توابع بی نام (Anonymous Function) تغریف کرد. روش معمول برای تعریف توابع (توابع با نام) استفاده از کلمه کلیدی def است ولی برای تعریف توابع بی نام باید از کلمه کلیدی lambda استفاده کرد. توابع lambda معمولا همراه توابع map, reduce و filter استفاده می شوند. همانند توابعی که با def تعریف شده اند، توابع lambda نیز پس از تعریف باید فرخوانی شوند.

در قطعه کد ۱ در ابتدا تابع power تعریف شده است که عدد x را به توان عدد b می رساند. یک تابع شامل چندین قطعه کد مرتبط به هم است که تحت یک نام و در غالب بدنه تابع تعریف شده اند. در خط ۷ توسط کلمه کلیدی lambda تابعی بی نام تعریف شده است. اولین تفاوت در تعریف توابع بی نام این است که این توابع نمی توانند شامل عبارت return باشند، بلکه عملکرد آنها این است که نتیجه عبارت درون تابع را به صورت خودکار برگشت دهند. x و b نام آرگومانهایی است که به تابع lambda ارسال و در عبارت تعریف شده درون lambda استفاده می شوند.

نکته مهم دیگر اینکه هر lambda تنها می تواند شامل یک عبارت باشد ولی توابع معمولی که با def تعریف می شوند شامل بدنه ای از دستورها است که خط به خط اجرا می شوند. شکل کلی برای تعریف یک تابع lambda به صورت قطعه کد ۲ است که در آن تمامی آرگومان ها جلوی کلمه کلیدی lambda نوشته و با ویرگول از هم جدا می شوند. تمامی این آرگومان ها در عبارت پس از علامت : شرکت می کنند.

در قطعه ۱ برای استفاده از تابع lambda در یک نقطه (خط) دیگر از برنامه آنرا به نام یک متغیر اختصاص داده ایم و سپس در خط ۸ همانند یک تابع آنرا فراخوانی کرده ایم. فراخوانی از طریق نام آن متغیر به همراه آرگومان های lambda درون پرانتزهای باز و بسته است. همانطور که گفته شد lambda از یک تک عبارت تشکیل شده است که محاسبه شده و برگشت داده می شود. منظور از عبارت واژه Expression است. Expression به عبارتی محاسباتی اشاره می کند که حاصل آن برگشت داده می شود و با Statement متفاوت است. توابع معمولی شامل چندین Statement هستند که نتیجه اجرای آنها، نتیجه برگشتی تابع خواهد بود.

در قطعه کد ۳ یک lambda درون یک تابع تعریف شده است. تابع یک آرگومان و lambda دو آرگومان دریافت می کنند. درون lambda آرگومان ارسالی به تابع (n) با آرگومان x لمبدا جمع می شود و نتیجه به توان عدد آرگومان b می رسد و نهایتا توسط تابع func برگشت داده می شود.

در خط ۴ آرگومان n مربوط به تابع func ارسال می شود و نتیجه درون متغیر func_call ذخیره می شود. اگر از تابع type استفاده کنید می بیند که متغیر func_call به چیزی شبیه به function func.<locals>.<lambda> at 0x100762e18 اشاره می کند. در خط ۴ از طریق نام متفیری که پیش از این ایجاد شده، آرگومان های x و b ارسال می شوند.

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

کاربرد تابع بی نام عبارت lambda : مرتب سازی دیکشنری ها در پایتون با تابع ()sorted