تغییرات کامل پایتون در نسخه 3.10 – پایتون 3.10 چه ویژگیهایی دارد؟
پایتون 3.10 یکی از قدرتمندترین و پرکاربردترین زبانهای برنامه نویسی در جهان است، که سال به سال با زبانهای برنامه نویسی برتر مبارزه میکند. به لطف کتابخانههای مفید، از آنها برای ایجاد تقریبا هر نوع برنامه ممکن، از جمله نرم افزار دسکتاپ، سیستم عامل، هوش مصنوعی، نرم افزار ماشین لرنینگ، برنامههای کاربردی موبایل و حتی بازیهای ویدیویی استفاده میشود.
پایتون یکی از مهم ترین زبانهای برنامه نویسی در حال حاضر به حساب میآید و بسیاری از مبتدیان علاقه مند به زبانهای برنامه نویسی به دلیل سهولت در مقایسه با سایر زبانها تمایل به یادگیری آن دارند، بنابراین متوجه میشویم که بسیار محبوب است.
پایتون از سال 1991 وجود داشته است و جهان شاهد ظهور بسیاری از زبانهای برنامه نویسی بوده است. چه زبانهایی مانند JAVA، C، C++ یا خود پایتون، هر زبان به راحتی برای خدمت یا انجام یک هدف خاص طراحی شده است. با گذشت زمان، مردم شروع به برقراری ارتباط با دستگاهها به این چند زبان کردند.
در نتیجه ظهور زبانهای برنامهنویسی، نرمافزارهای شگفتانگیز بسیاری شکل گرفتهاند و بسیاری از مشکلات پیچیده موجود حل شدهاند. اما با پیشرفت در زمینه زبانهای برنامه نویسی، نبردی برای زبانی که سخت تر و قدرتمندتر است در حال ظهور است.
در حالی که تعدادی از دانشمندان زبان برنامه نویسی راه خود را به دنیایی که امروزه میشناسیم باز کرده اند، برخی از زبانها شروع به محو شدن کرده اند. علاوه بر این، اکتشافات فنی و دیجیتالی جدید جهان را فراگرفته است.
این پیشرفت منجر به ویرایش و حفظ دادههایی شد که پیش از این حتی سوابق مکتوب نداشتند. امروزه ما در انبوهی از دادهها زندگی میکنیم. که اکثریت شرکتها از آنها برای اهداف مختلف مانند ایجاد و طراحی برنامههای کاربردی، ارائه خدمات جدید استفاده میکنند، که در نهایت منجر به درک بهتر مشتری میشود.
استفاده از پایتون 3.10 در حوزه علم داده
این روزها با دادههای بسیار زیادی که در دسترس است، هر سازمان یا شرکتی میخواهد بینشی از آن استخراج کند. شرکتها میخواهند پیشرفت خدمات خود را اندازه گیری کنند، تصمیمات آگاهانه بگیرند، برای آینده برنامه ریزی کنند و محصولات مقرون به صرفه تر و با ارزش افزوده ارائه دهند.
پایتون 3.10
تنها راه حلی که آنها پیدا میکنند، در فرآیند تجزیه و تحلیل کلان دادهها و تلاش برای درک آن برای دانشمندان داده است.
مشاغل جدید در حال ظهور که برای دستیابی به اهداف نیاز به زبان برنامه نویسی دارند، شغل دانشمند داده است. که امروزه سازمانها پول زیادی را در آن سرمایه گذاری میکنند.
استفاده از پایتون 3.10 توسط دانشمندان داده
آنها افرادی هستند که مسئول پردازش دادهها و سازماندهی آنها با استفاده از روشهای علمی، الگوریتمها و سایر فناوریهای مرتبط هستند.
چرا یادگیری پایتون 3.10 اکنون برای همه دانشمندان داده ضروری است؟
به صورت روزانه، کار یک دانشمند داده این است که مقادیر زیادی از مجموعه دادهها را با پایتون 3.10 غربال کند. آنچه مهم است را استخراج کند و در نهایت بینشهایی را به شرکتها ارائه دهد که به راحتی قابل درک باشد. بر اساس این بینش، شرکتها استراتژیها را شکل میدهند و تصمیمات تجاری حیاتی میگیرند.
بینش از دادهها دلیل این نوآوری عظیم است که این نوآوریها را به چیزهای ملموس تبدیل میکند. اگرچه ممکن است این یک کار بصری به نظر برسد، اما چیزهای زیادی پشت میز یک دانشمند داده است.
دادههای خام، گاهی اوقات میتواند یک کابوس باشد. به خصوص برای کسانی که تجارت زیادی دارند، چیزهایی که ممکن است به هدف سازمان یا شرکت مرتبط نباشد. بنابراین، یک دانشمند داده به مجموعه ای از ابزارها در یک زبان برنامه نویسی کارآمد و آسان برای پیاده سازی نیاز دارد.
پایتون 3.10 یک زبان عمومی و یک زبان برنامه نویسی سطح بالا است. پایتون میتواند برای توسعه برنامههای کاربردی رابط کاربری گرافیکی، وب سایتها و برنامههای کاربردی وب استفاده شود. همچنین، زبان پایتون به شما اجازه میدهد تا با مراقبت از وظایف برنامه نویسی رایج، بر روی عملکردهای اساسی یک برنامه تمرکز کنید.
سینتکس ساده زبان برنامه نویسی باعث میشود که بتوانید پایه کد را خوانا و قابل نگهداری آسان تر کنید. همانطور که علم داده به پیشرفت خود ادامه میدهد، پایتون ابزارهای زیادی را برای کمک به دانشمندان در دستیابی به اهداف خود با کمال اضافه میکند.
علاوه بر این، جامعه بزرگ و حامی پایتون 3.10 به توسعهدهندگان و دانشمندان کمک میکند تا راهحلهایی را از دیگر اعضایی که مشکلات خاصی را تجربه کردهاند و نحوه حل آنها بیابند.
اهمیت یادگیری پایتون در سال 2022
تغییرات در پایتون 3.10
به لطف انتشار پایتون 3.10، زبان برنامه نویسی Python قدرتمندتر و همه کاره تر شده است. در این مقاله، به برخی از ویژگیها و بهبودهای جدید موجود در این آخرین نسخه، از جمله تغییرات Regex و تطبیق الگو، استدلالهای سختگیرانه برای عملکرد zip و پیامهای خطای بهبود یافته نگاه خواهیم کرد.
تطبیق الگوی ساختاری در پایتون 3.10
پایتون به دلیل قدرتش در زمینه عبارات منظم، عبارات منظم و تطبیق الگو شناخته شده است. قابلیت پایتون یکی از تغییرات نسخه جدید این زبان است. در پایتون 3.10، تطبیق الگوی سلسله مراتبی به توسعه دهندگان اجازه میدهد تا متغیرها را با مجموعه ای از مقادیر دیگر مطابقت دهند. این امر با بیانیه وضعیت تطابق جدید اضافه شده به دست میآید.
در اینجا مثالی از نحوه عملکرد Match Case در کد پایتون 3.10 آمده است:
name = “James” match name: case “Paul”: print(“Not the right name.”) case “Peter”: print(“Nope, not it either.”) case “Mary”: print(“No sir, guess again.”) case _: print(“Name not found.”)
|
– مدیریت سینتکس در پرانتز گنجانده شده است
پایتون 3.10 امکان قالب بندی مجموعههای طولانی از مدیران زمینه را در چندین خط فراهم میکند. برای انجام این کار، میتوانید به سادگی هنگام استفاده از دستور with، مدیران زمینه را در پرانتز قرار دهید.
– پیامهای خطا بهبود یافته است
یکی از تغییرات عمده در پایتون 3.10 شامل بهبود پیامهای خطا است. همانطور که توسعهدهندگان پایتون میدانند، گاهی اوقات پیامهای خطا میتوانند تا حدودی مبهم باشند و برای ردیابی خطایی که واقعا رخ داده یا حتی خطی که خطا در آن رخ داده است، کاملا مفید نباشند.
پایتون 3.10 با ارائه پیامهای خطای دقیقتر و مفیدتر، از جمله نشان دادن دقیق محل وقوع خطا، به دنبال بهبود این موضوع است. با در نظر گرفتن تمام زمانی که توسعه دهندگان و برنامه نویسان برای رفع اشکال کد صرف میکنند، این یک پیشرفت بزرگ برای توسعه دهندگان پایتون است.
برای مشاهده عملکرد آن، کد زیر و پیام خطایی را که هنگام اجرای آن در یک ویرایشگر کد یا محیط توسعه یکپارچه (IDE) ظاهر میشود، در نظر بگیرید:
print(“My name is James Payne and this is my error!) |
این کد پیغام خطای زیر را ایجاد میکند:
$ python errorExample.py File “/home/python/errorExample.py”, lin 1 print(“My name is James Payne and this is my error!) ^ SyntaxError: EOL while scanning string literal |
– پازینگ در پایتون 3.10
همانطور که معمولا در مورد به روز رسانیهای اصلی زبانهای برنامه نویسی اتفاق میافتد، پایتون 3.10 نیز تعدادی حذفیات دارد. برای شروع، نسخههای OpenSSL پیشتر از 1.1.1 دیگر پشتیبانی نمیشوند. همه ماژولها از جمله ماژول hashlib، hmac و ssl تحت تاثیر این تغییر قرار میگیرند. علاوه بر این، بسته تریلر نادیده گرفته شده است. که به طور رسمی در پایتون 3.12 حذف خواهد شد.
تمام ویژگیها و تغییرات مهم در پایتون 3.10
” پایتون 3.10″ منتشر شده است. بنابراین وقت آن است که به مهم ترین ویژگیهای جدید و تغییراتی که به همراه خواهد داشت، نگاهی بیندازیم.
برای مشاهده نسخه پایتون 3.10 نسخه آلفا/بتا را نصب کنید.
اگر میخواهید تمام ویژگیهای آخرین و بهترین نسخه پایتون را تجربه کنید، باید نسخه آلفا/بتا را نصب کنید. با این حال، از آنجایی که این نسخه هنوز یک نسخه پایدار نیست، نمیخواهیم نصب پیشفرض پایتون را با آن بازنویسی کنیم. بنابراین، برای نصب پایتون 3.10 به همراه کامپایلر فعلی خود، میتوانیم از موارد زیر استفاده کنیم:
پس از اجرای کد بالا، توسط پایتون 3.10 به شما خوش آمد میگوید:
با نصب پایتون 3.10، میتوانیم نگاهی به تمام ویژگیها و تغییرات جدید بیندازیم.
بررسی تایپ برای بهبود در پایتون 3.10
اگر از چک کردن تایپ در پایتون استفاده میکنید، خوشحال میشوید که پایتون 3.10 شامل بسیاری از بهبودهای بررسی تایپ، از جمله Operator Type Union با دقت بیشتری است. در زیر برای شما یک مثال از نسخههای قبلی و نسخه 3.10 را آوردیم.
علاوه بر این، این بهینه سازی ساده تنها به نوشتن حاشیه نویسی محدود نمیشود، بلکه میتواند با توابع ()isinstance و ()issubclass نیز استفاده شود:
تغییر نوع سینتکس:
در نسخههای قبلی پایتون، نامهای مستعار اضافه میشد تا به ما امکان ایجاد نامهای مستعار که نشاندهنده انواع تعریفشده توسط کاربر باشد، میدادند. در پایتون 3.9 یا قبل از آن، این کار را میتوان به صورت زیر انجام داد:
در اینجا FileName یک نام مستعار برای نوع رشته پایه پایتون است. با شروع با پایتون 3.10، سینتکس برای تعریف نام مستعار نوع به شکل زیر تغییر میکند:
این تغییر ساده، تمایز بین تخصیص متغیر معمولی و نام مستعار نوع را برای برنامه نویسان و بررسی کنندههای نوع آسان تر میکند. این تغییر همچنین سازگار با نسخه قبلی است، بنابراین نیازی نیست کدهای موجود خود را که از نام مستعار نوع استفاده میکند، بروز کنید.
جدا از این دو تغییر، پیشرفتهای دیگری نیز در ماژول نوع وجود دارد. انواع مشخصات پارامتر در PEP 612 تغییراتی داشتند. با این حال، این چیزی نیست که در اکثر پایگاههای کد پایتون پیدا کنید، زیرا برای تغییر مسیر انواع پارامتر به یک فراخوانی استفاده میشود. اگر مورد استفاده برای چنین چیزی دارید، با PEP فوق الذکر همراه باشید.
پاپیولیشن در پایتون 3.10
با شروع با پایتون 3.10، میتوانید از int.bit_count() برای شمارش تعداد بیتها در نمایش باینری یک عدد صحیح استفاده کنید. این تغییر همچنین به عنوان پاپیولیشن (popcount) شناخته میشود. در زیر برای شما یک مثال آوردیم.
پیاده سازی این تابع دشوار نیست، در واقع فقط یک خط کد است. که در زیر برای شما مثال زدیم.
با وجود این مسئله، این یک عملکرد مناسب دیگر است که ممکن است در برخی مواقع مفید باشد. و این نوع ویژگیهای کوچک مفید، یکی از دلایل محبوبیت پایتون هستند.
distutils در پایتون 3.10 نادیده گرفته میشود
با نسخه جدید، چیزها نه تنها اضافه میشوند، بلکه منسوخ/حذف میشوند. این مورد برای بسته distutils است که در 3.10 منسوخ شد و در 3.12 حذف خواهد شد. مدتی است که این بسته با ابزارهای نصب و بسته بندی جایگزین شده است. با وجود این مسئله، احتمالا باید کدهای خود را برای استفاده از توزیعها بررسی کنید و به زودی برای خلاص شدن از شر آنها آماده شوید.
سینتکسهای کانتکس منیجر در پایتون 3.10
کانتکس منیجرهای پایتون برای باز کردن/بستن فایلها، مدیریت اتصالات پایگاه داده و بسیاری موارد دیگر بسیار خوب عمل میکنند. و در پایتون 3.10 نحو آنها کمی بهبود یافته است.
این تغییر به کانتکس منیجرها اجازه میدهد چندین خط را توسعه دهند. در زیر یک مثال خوب را برای شما آوردیم:
و همانطور که از موارد بالا میبینید، ما حتی میتوانیم به متغیری که توسط یک کانتکس منیجر در متغیر دیگری که آن را دنبال میکند، اشاره کنیم.
این معماری بهینهسازی شده بسیار انعطافپذیر است. هر چیزی که میخواهید در پایتون 3.10 کد بزنید، موفق خواهید شد.
بهبود عملکرد پایتون 3.10 نسبت به نسخههای قبلی
همانطور که در مورد تمام نسخههای اخیر پایتون وجود داشت، پایتون 3.10 نیز بهبودهایی در عملکرد به همراه دارد. اولین مورد بهینه سازی سازندههای str() ، bytes() و bytearray() است که حدود 30٪ سریعتر است.
یکی دیگر از پیشرفتهای قابل توجه این است که پارامترهای تابع و حاشیه نویسی آنها دیگر در زمان اجرا محاسبه نمیشوند. بلکه در زمان کامپایل محاسبه میشوند. ایجاد یک تابع با حاشیه نویسی پارامترها حدود دو برابر سریعتر میشود.
علاوه بر این، پیشرفتهای بیشتری در بخشهای مختلف هسته پایتون وجود دارد. میتوانید جزئیات مربوط به مشکلات زیر را در ردیاب خطای پایتون بیابید: bpo-41718، bpo-42927، و bpo-43452.
مچینگ استایل در پایتون 3.10
مزیت بزرگی که قطعا در مورد آن شنیده اید، تطبیق الگوی ساختاری است. این عبارت موردی را که همه ما از زبانهای برنامه نویسی دیگر میشناسیم، اضافه میکند. همه ما میدانیم که چگونه از یک دستور case استفاده کنیم، اما با توجه به اینکه این Python است، این فقط یک سینتکس ساده سوییچ نیست، بلکه برخی ویژگیهای قدرتمند را نیز اضافه میکند که باید آنها را بررسی کنیم.
تطبیق الگو در سادهترین شکل خود شامل یک کلمه کلیدی منطبق و به دنبال آن یک عبارت است. که نتیجه آن در برابر الگوها در عبارات موردی متوالی آزمایش میشود. در زیر برای شما یک مثال آوردیم.
در این مثال ساده، از متغیر روز به عنوان عبارت خود استفاده میکنیم. که سپس با رشتههای فردی در دستورات case مقایسه میشود. به غیر از موارد با حروف الفبای رشته، آخرین مورد را نیز مشاهده خواهید کرد که از wildcard استفاده میکند، که معادل کلمه کلیدی پیش فرض موجود در زبانهای دیگر است. این حالت wildcard را میتوان حذف کرد. در این صورت ممکن است no-op رخ دهد، که اساسا به این معنی است که هیچ چیز برگردانده نمیشود.
نکته دیگری که در کد بالا باید به آن توجه کنید استفاده از | است که ترکیب چند لفظی را با استفاده از | امکان پذیر میکند.
همانطور که اشاره شد، تطبیق الگوی جدید به ساختار اصلی ختم نمیشود. اما برخی ویژگیهای اضافی مانند تطبیق الگوی پیچیده را به همراه دارد که در زیر در یک مثال برای شما آوردیم.
در قطعه بالا از یک تاپل به عنوان یک عبارت برای مطابقت با آن استفاده کردیم. با این حال، ما محدود به استفاده از تاپلها نیستیم. به طور کلی، هر تکراری در اینجا کار خواهد کرد. همچنین همانطور که در بالا میبینید، wildcard _ را میتوان در داخل الگوهای پیچیده مانند مثال قبلی استفاده کرد.
استفاده از مجموعهها یا لیستهای معمولی ممکن است همیشه بهترین رویکرد نباشد. بنابراین اگر ترجیح میدهید از کلاسها به جای آن استفاده کنید، میتوانید به روش زیر بازنویسی کنید.
در اینجا میبینیم که امکان تطبیق ویژگیهای کلاس با الگوهای مشابه سازنده کلاس وجود دارد. هنگامی که از این رویکرد استفاده میشود، ویژگیهای فردی نیز به متغیرهایی گروهبندی میشوند. که سپس میتوانیم از آنها در Body مورد نظر استفاده کنیم.
در بالا نیز میتوانیم برخی از ویژگیهای دیگر تطابق الگو را ببینیم. در عبارت مورد اول، یک محافظ است، که اگر از الگو پیروی کند، شرط است. اگر تطبیق بر اساس مقدار کافی نیست و شما نیاز به اضافه کردن برخی بررسیهای شرطی اضافی دارید، این میتواند مفید واقع شود.
با نگاهی به موارد باقیمانده در اینجا، همچنین میتوانیم ببینیم که هم کلمات کلیدی و هم آرگومانهای موقعیتی با سینتکس استراکچر مانند، کار میکنند، و همین امر برای متغیر _ wildcard نیز صادق است.
تطبیق الگو همچنین امکان استفاده از الگوهای تودرتو / نستد پترنز، را فراهم میکند. این الگوهای تودرتو میتوانند از هر تکرارکنندهای استفاده کنند. در زیر برای شما یک مثال آوردیم.
در نهایت، از عملگر * میتوان برای فشرده کردن متغیرها در الگو استفاده کرد. و این نیز برای wildcard با استفاده از الگوی * کار میکند.
نتیجه گیری
پایتون 3.10 بسیاری از ویژگیهای جالب و جدید را به ارمغان میآورد. اما از آنجایی که این نسخه آلفا است، هنوز کاملا آزمایش نشده و باید منتظر نسخههای Stable باشیم.
بنابراین، مطمئنا شروع به استفاده از آن هنوز ایده خوبی نیست. بنابراین، بهتر است که بنشینید و منتظر انتشار کامل آن باشید.
با این حال اگر مایل به ارتقا هستید، ممکن است ایده بدی نباشد که اولین نسخه بتا را دریافت کنید و آزمایش کنید.
همچنین می توانید از دوره آموزش پایتون استفاده کنید که در این دوره پایتون 3.10 آموزش داده شده است
منابع:
دیدگاهتان را بنویسید