.:: تفاوت پایتون 2 و 3 – تفاوت های مهمی که باید بدانید ::.
» باسلام، با یکی دیگر از مقالات آموزشی امنیتی با شما کاربران محترم هستیم !
اینبار با موضوع تفاوت پایتون 2 و 3 و تفاوت های مهم این دو با شما عزیزان همراه هستیم، ” با ما همراه باشید ” !
» پایتون معمولاً به عنوان یکی از بهترین زبان های برنامه نویسی
برای مبتدیان برای یادگیری مورد استفاده قرار می گیرد و نحوه عملکرد ساده آن باعث می شود که یادگیری آن دشوار نباشد.
-» اما بسیاری از آموزش ها هنوز هم از پایتون 2 استفاده می کنند !
که اکنون قدیمی است. پایتون 3 بسیاری از ویژگی های جدید را معرفی می کند ، و مهم است که از آنها آگاه باشید
در مورد پایتون 2 بیشتر بدانید !
» پایتون 2 برای اولین بار در سال 2000 منتشر شد.
این نسخه بر روی نسخه های قبلی این زبان بهبود یافته و ویژگی های مشترک
برای سایر زبان های برنامه نویسی مانند جمع آوری زباله ، درک لیست و پشتیبانی از یونیکد را معرفی کرد.
-» نسخه 2.1 شاهد پیشرفت های جزئی جزئی بود
و 2.2 در انتهای سال 2001 منتشر شد. نسخه 2.2 دارای وحدت نوع است
که انواع و کلاس ها را در یک سلسله مراتب واحد ادغام کرده و پایتون را به زبانی شی گرا تبدیل می کند.
-» نسخه ها تا پایتون 2.7 پیش رفتند ، که قرار است آخرین نسخه بزرگ تا پایتون 3 باشد.
پایتون 2 در اولین روز سال 2020 به طور رسمی بازنشسته شد. پایتون 3 ، اولین بار در سال 2008 رو نمایی شد ،و اکنون آخرین نسخه از پایتون 3 ، نسخه 3.8.3 است. ( آخرین بروزرسانی تا تاریخ انتشار ان پست ) !
تفاوت پایتون 2 و 3
» اولین و احتمالاً قابل توجه ترین تفاوت در پایتون 3
عملکرد چاپ است. در پایتون 2 می توان از پرینت با پرانتز یا بدون پرانتز استفاده کرد :
print(‘Hello, world.’) print ‘Hello, world.’
» اما در پایتون 3 حتما باید از پرانتز استفاده کرد !
print(‘Hello, world.’)
بخش تقسیم (Integer Division) :
» پایتون 3 همچنین تقسیم اعداد صحیح را به صورت متفاوتی کنترل می کند.
در نسخه 2 ، تقسیم دو عدد صحیح نتیجه یک عدد صحیح را به همراه خواهد داشت :
print 5 / 3 1
» اما در پایتون 3 ، یک مقدار float بازگردانده می شود :
print(5 / 3) 1.6666666666666667
Range Function :
» در پایتون 2 ، تابع xrange برای تکرار برای حلقه ها و همچنین تکرار از طریق لیست یا دیکشنری استفاده می شود.
for x in xrange(1, 10): print(x)
» در نسخه 3 xrange با range جایگزین شد !
for x in range(1, 10): print(x)
Unicode :
» پایتون 2 به طور ضمنی رشته ها
را به عنوان مقادیر ASCII ذخیره می کند. برای ذخیره آنها با استفاده از یونیکد ، باید با u مشخص شود:
print(u’Hello’)
» در پایتون 3 ، رشته ها اکنون به صورت پیش فرض به عنوان یونیکد رفتار می شوند ، بنابراین نیازی به مشخص کردن نیست :
print(‘Hello’)
Exceptions :
» نحوه استفاده از استثنائات و خطاها در پایتون 3 تغییر یافته است. در نسخه 2 ، استثنائات چیزی شبیه به این است:
try: checking_error except NameError, err: print err, ‘Error found’
» در نسخه 3 ، باید کلمه کلیدی as را اضافه کنیم :
try: checking_error except NameError as err: print(err, ‘Error found’)
» پایتون 2 همچنین با استثنائات مانند شکل زیر رفتار میکند :
raise IOError, ‘error’
» اما در پایتون 3 به شکل زیر نوشته میشود :
raise IOError(‘error’)
Variable Leakage
» در پایتون 2 ، متغیرهای یک حلقه for به صورت global هستند !
این بدان معنی است که متغیرهای global می توانند در داخل حلقه تغییر کنند. در پایتون 3 ، tweaked شد و مقدار متغیرها هرگز تغییر نمی کند.
Future Module
» پایتون 3 کلمات کلیدی و ویژگیهای خاصی را اضافه کرد که با Python 2 سازگار نیست.
خوشبختانه ، یک روش آسان برای استفاده از قابلیت های نسخه 3 در کدهای در حال اجرا Python 2 – ماژول _future_ هست.
from _future_ import division
توی کلاس ها تغییری ایجاد نکردن؟
19
سلام مطمن نیستم
19