دوره ی۳۳ مرکز آموزشی راهنمایی علامه حلی۱

وبلاگ بچه های دوره ۳۳ علامه حلی۱

دوره ی۳۳ مرکز آموزشی راهنمایی علامه حلی۱

وبلاگ بچه های دوره ۳۳ علامه حلی۱

این بلاگ بچه های دوره ی۳۳ راهنمایی علامه حلی ۱است که توسط خود بچه ها اداره میشه و مطالب درسی سوال ها معما خلاصه و نکته گذاشته میشود
کانال تلگرام ما:http://t.me/allame_helli1
.
.
.
.
لذت ببرید

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

شنبه, ۷ اسفند ۱۳۹۵، ۰۷:۰۴ ب.ظ

و در آخر از هر سه برنامه نویس پایتون تنها یک نفر برنامه اش را چند نسخه ای (multi-version) نوشته است. جالب تر این است که از سال 2013 تا 2014 این رقم حتّی کاهش هم داشته است.


و حالا چند تفاوت:


شاید تفاوت در گذاشتن پرانتز پس از print شناخته شده ترین تغییر پایتون 3 نسبت به پایتون 2 باشد.


پایتون ۲

print "Hello Helli"


پایتون۳

print ("Hello Helli")


دومین تفاوت کلیدی تفاوت در تقسیم است. عملگر / به طور پیشفرض در پایتون 2 عمل تقسیم صحیح را انجام می دهد مگر اینکه در a / b یکی از a و b  اعشاری باشد که در آنصورت تقسیم اعشاری انجام می شود. در حالی که عملگر // در پایتون 2 در هر شرایطی تقسیم صحیح انجام می دهد.

در پایتون 3 تفاوت این است که عملگر / تقسیم اعشاری می کند و عملگر // تقسیم صحیح.


پایتون ۲

c = a / float(b)


پایتون ۳

c = a / b


*نکته: اگر در برنامه ای که با پایتون 2 نوشته اید می خواهید از قواعد عملگرهای تقسیم پایتون 3 استفاده کنید، کافی است از آینده عملگر تقسیم را import کنید! این کار با نوشتن خط زیر در ابتدای برنامه امکان پذیر است.

from __future__ import division


پایتون 2 بعضی مقادیر که جنسشان یکسان نبود را بطور هوشمندانه ای جمع می کرد، امّا پایتون 3 همجنس کردن دو مقدار را به عهده کاربر گذاشته است. برای مثال پایتون 2 توانایی جمع bytearray و string را داشت ولی پایتون 3 در مواجهه با این عمل TypeError می دهد.


پایتون۲

s = "Hello" + b" Helli"


پایتون۳

c = "Hello" + str(b" Helli")[2:-1]


در پایتون 2، استفاده از range به معنای ساخت یک داده ساختار (DS یا Data Structure) به نام لیست (list) بود که حجم قابل توجّهی از حافظه را به خود اختصاص می داد. در حلقه های for برای این که این داده ساختار پیچیده ساخته نشود تا اسیر محدودیت حافظه و دیگر مشکلاتش نشویم از دستور دیگری به نام xrange استفاده می شود. در پایتون 3 دستور xrange حذف شد و بجای آن range دقیقا همان کار xrange را می کند، و اگر بخواهید به معادل range پایتون 2، در پایتون 3 دسترسی داشته باشید باید از (()list(range استفاده کنید.


پایتون۲

for i in xrange(10000):

    a = b


پایتون۳

for i in range(10000):

    a = b


در پایتون 2 دستور input نمی توانست رشته ها را بخواند. (دستور input مثل عملیاتی که (()eval(input در پایتون انجام می دهد، را انجام می دهد.) برای اینکه در پایتون 2 بتوانیم رشته ها را بخوانیم یا به رشته خام عدد ورودی دسترسی داشته باشیم باید از raw_input استفاده می کردیم. در پایتون 3 یکی از تغییرات خوشایند همین است که input مثل raw_input در پایتون 2 رشته خام می گیرد. (raw_input در پایتون 3 حذف شده است.)


پایتون۲

myString = raw_input() 


پایتون۳

myString = input()

موافقین ۰ مخالفین ۰ ۹۵/۱۲/۰۷
borna ghazizadeh

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی