پایتون ۳.۱۱ قدرتمندتر و هوشمندتر

منتشر شده در analyticsinsight به تاریخ ۲۰ ژوئن ۲۰۲۲
لینک منبع PYTHON IS NO MORE OVERRATED, THANKS TO PYTHON 3.11

زبان برنامه‌نویسی پایتون سالی یک بار نسخه‌های شگفت‌انگیز جدید را همراه با نسخه بتای قفل شده در نیمه قبل ارائه می‌دهد و نسخه نهایی در پایان سال ارائه می‌شود. مجموعه نهایی ویژگی برای پایتون ۳.۱۱ با یک نسخه بتا برای آزمایش نهایی شده‌است. توسعه‌دهندگان الهام گرفته‌اند تا دست خود را روی این آخرین کد غیر تولیدی امتحان کنند تا مطمئن شوند که با برنامه‌های شما به خوبی کار می‌کند و دید کلی از اینکه آیا کدی که روی آن کار می‌کنید از غنی سازی عملکرد آن بهره می‌برد یا خیر.

فراخوانی تابع پایتون نیز به سربار کمتری در پیتون ۳.۱۱ نیاز دارد. فریم‌های استک برای تماس با تابع در حال حاضر از حافظه کمتری استفاده می‌کنند و به طور موثرتری طراحی می‌شوند. همچنین، در حالی که تماس‌های بازگشتی به‌صورت دنباله‌دار بهینه‌سازی نشده‌اند (که احتمالاً به هر حال در پایتون امکان‌پذیر نیست)، نسبت به نسخه‌های قبلی کارآمدتر هستند. همچنین مفسر پایتون سریع‌تر شروع به کار می‌کند و ماژول‌های اصلی مورد نیاز برای زمان اجرای پایتون ذخیره و با کارایی بیشتری بارگذاری می‌شوند.

با توجه به مجموعه بنچ‌مارک رسمی پایتون، پایتون ۳.۱۱ حدود ۱.۲۵ برابر سریع‌تر از نسخه ۳.۱۰ اجرا می‌شود. توجه داشته باشید که این افزایش سرعت یک معیار کلی است: برخی چیزها بسیار سریع‌تر هستند، اما بسیاری دیگر تنها کمی سریع‌تر یا تقریبا یک‌سان هستند. با این حال، بهترین بخش در مورد این پیشرفت‌ها این است که آن‌ها به صورت رایگان می‌آیند. برای استفاده از سرعت 3.11 نیازی به تغییر کد برای برنامه‌های پایتون ندارید.

با توجه به این خبر، پیشرفت‌های عملکردی تنها با به دست آوردن مزیت CPyton (پروژه‌ای که با سرمایه‌گذاری مایکروسافت و به شکلی هوشمندانه توسعه‌یافته است) انجام می‌شود. پایتون سریع‌تر، مفسر پیش‌فرض را دارد که به عنوان «CPyton» شناخته می‌شود. این مفسر از تکنولوژی کامپایلر به موقع استفاده می‌کند و کدی را پیدا می‌کند که می‌تواند از این راه‌حل خاص و هوشمند سود ببرد. این امر، دستورالعمل‌هایی را در مورد اشیا کد اجرایی که باید با یک دستورالعمل جدید قاب شوند، ارائه می‌دهد. دستورالعمل جدید سریع‌تر اجرا می‌شود. به هر حال این باعث می‌شود همه پایتون سریعتر اجرا شود.

مقدمه‌ای بر سی‌پایتون

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

پایتون ۳.۱۱ اولین انتشار است که از پروژه‌ای به نام پایتون سریع‌تر بهره می‌برد، که در آن پایتون نسخه استاندارد مفسر است. پروستر پایتون پروژه‌ای است که توسط مایکروسافت تامین مالی می‌شود، که اعضای آن عبارتند از مخترع پایتون، گویدو ون روزسوم، مهندس ارشد نرم‌افزار مایکروسافت، اریک اسنو، و مارک شانون-که با مایکروسافت به عنوان رهبر فن‌آوری برای این پروژه قرارداد دارند.

در اینجا برخی از ویژگی‌های پیتون ۳.۱۱ آورده شده‌است.

انتظار می‌رود که پایتون ۳.۱۱ دارای یک خطای حتی بهتر در پیدا کردن ویژگی در دنباله‌ها باشد. این امر روشن می‌سازد که کدام نحو یا شی خطای گزارش‌شده را به راه انداخته‌است.

در نسخه ۳.۱۱، مفسر پایتون بسیار بهینه‌تر و سریع‌تر از نسخه ۳.۱۰ است. سی‌پایتون 3.11 به طور متوسط 1.22 برابر سریعتر از سی‌پایتون 3.10 است که با مجموعه معیار عملکرد اندازه‌گیری می‌شود و با GCC در لینوکس اوبونتو کامپایل می‌شود. بسته به حجم کاری شما، سرعت می‌تواند ۱۰ تا ۶۰ درصد سریع‌تر باشد.

در این نسخه، پایتون بایت کد را در دایرکتوری pycache کش می‌کند تا روند بارگذاری ماژول‌ها را سرعت بخشد. انتظار می‌رود که راه‌اندازی اینترپرتر ۱۰-۱۵٪ سریع‌تر در پایتون ۳.۱۱ باشد.

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

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

بنابراین، حالا می‌توانیم بگوییم که پایتون دیگر بیش از حد رتبه‌بندی نشده است؟

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