Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 94d7d03

Browse filesBrowse files
author
Saeid Darvishi
committed
log(id)==00104
1 parent 1ccf520 commit 94d7d03
Copy full SHA for 94d7d03

File tree

Expand file treeCollapse file tree

8 files changed

+82
-56
lines changed
Open diff view settings
Filter options
Expand file treeCollapse file tree

8 files changed

+82
-56
lines changed
Open diff view settings
Collapse file

‎lessons/l01.rst‎

Copy file name to clipboardExpand all lines: lessons/l01.rst
+4-4Lines changed: 4 additions & 4 deletions
  • Display the source diff
  • Display the rich diff
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
یک سال بعد آقای روسوم از پایتون در پروژه‌ آمیب استفاده می‌کند؛ نتیجه‌ مطلوب و نیز بازخورد آن در بین همکارانش موجب می‌شود تا وی به بسیاری از بهینه سازی‌های اولیه در پایتون اقدام نماید. این روند ادامه می‌یابد تا اینکه سرانجام در ماه دوم از سال ۱۹۹۱ میلادی این زبان را با نسخه 0.9.0 و تحت پروانه‌ای مشابه با پروانه‌ `MIT <http://en.wikipedia.org/wiki/MIT_License>`_ از طریق یکی از «گروه‌های خبری» (یوزنت Usenet) با عنوان `alt.sources <http://www.faqs.org/faqs/alt-sources-intro>`_ منتشر می‌سازد که با استقبال بالایی نیز رو به رو می‌گردد.
2525

26-
منشا انتخاب نام پایتون توسط آقای روسوم برخلاف تصور عمومی یا آنچه که از لوگوی آن مشاهده می‌شود به نوع خاصی از مار! مربوط نمی‌شود، در حقیقت این نام برگرفته از یک سریال کمدی تولید انگلستان با عنوان ”`Monty Python's Flying Circus <http://en.wikipedia.org/wiki/Monty_Python%27s_Flying_Circus>`_“ می‌باشد که پخش اصلی آن در طی سال‌های ۱۹۶۹ تا ۱۹۷۴ میلادی از شبکه‌ BBC One بوده است.
26+
منشا انتخاب نام پایتون توسط آقای روسوم برخلاف تصور عمومی یا آنچه که از لوگوی آن مشاهده می‌شود به نوع خاصی از مار مربوط نمی‌شود در حقیقت این نام برگرفته از یک سریال کمدی تولید انگلستان با عنوان ”`Monty Python's Flying Circus <http://en.wikipedia.org/wiki/Monty_Python%27s_Flying_Circus>`_“ می‌باشد که پخش اصلی آن در طی سال‌های ۱۹۶۹ تا ۱۹۷۴ میلادی از شبکه‌ BBC One بوده است.
2727

2828
توصیفی کوتاه
2929
--------------
@@ -45,7 +45,7 @@ CPython (سی‌پایتون) پیاده‌سازی استاندارد و اصل
4545

4646
ویژگی‌ها
4747
---------
48-
**پایتون** یک زبان برنامه‌نویسی رایگان و متن باز (Open Source) است که هم‌‌اکنون (یعنی از نسخه‌ 2.1 و جدیدتر) پروانه‌ آن توسط «بنیاد نرم‌افزار پایتون» `PSF <http://www.python.org/psf>`_ اداره می‌گردد. پروانه‌ پایتون سازگار با پروانه‌ `GPL3 <http://en.wikipedia.org/wiki/GNU_General_Public_License>`_ است، با این حال به برنامه‌نویس این اجازه را می‌دهد که بتواند برنامه‌ای با سورس بسته (Closed Source) تولید نماید.
48+
**پایتون** یک زبان برنامه‌نویسی رایگان، متن باز (Open Source) و آزاد است که هم‌‌اکنون (یعنی از نسخه‌ 2.1 و جدیدتر) پروانه‌ آن توسط «بنیاد نرم‌افزار پایتون» `PSF <http://www.python.org/psf>`_ اداره می‌گردد. پروانه‌ پایتون سازگار با پروانه‌ `GPL3 <http://en.wikipedia.org/wiki/GNU_General_Public_License>`_ است، با این حال به برنامه‌نویس این اجازه را می‌دهد که بتواند برنامه‌ای با سورس بسته (Closed Source) تولید نماید.
4949

5050
زبان پایتون از اجزای بسته نرم‌افزاری LAMP نیز به شمار می‌رود. این بسته عبارت است از: Linux ~ سیستم عامل / Apache ~ وب سرور / MySQL یا MariaDB ~ پایگاه‌ داده / Python یا Perl یا PHP ~ زبان برنامه‌نویسی.
5151

@@ -57,7 +57,7 @@ CPython (سی‌پایتون) پیاده‌سازی استاندارد و اصل
5757

5858
**پایتون** یک زبان برنامه‌نویسی پویا (Dynamic) بوده و نیز از قابلیت مدیریت خودکار حافظه برخوردار است. این زبان شباهت‌هایی با TCL ،Perl ،Ruby ،PHP یا دیگر زبان‌های برنامه‌نویسی پویا دارد. در این نوع زبان‌ها بر‌خلاف زبان‌های ایستا (Static) مانند C++ ،C و Java نیازی به تعریف صریح نوع متغیرها [#f7]_ (Variables) نیست و همچنین نوع متغیر در طول برنامه قابل تغییر است. در زبان‌های پویا متغیرها از خود نوعی ندارند و تصمیم گیری برای تخصیص نوع در «زمان اجرا» (RunTime) انجام می‌پذیرد.
5959

60-
بر خلاف زبان C، در پایتون اختصاص و آزاد‌سازی حافظه (RAM) به صورت خودکار انجام می‌شود. پایتون برای آزاد‌سازی حافظه از دو روش «شمارش ارجاع» (Reference Counting) و «زباله روبی» [#f8]_ (Garbage Collection) بهره می‌گیرد. (البته فراموش نشود که صحبت در مورد پیاده‌سازی CPython است)
60+
بر خلاف زبان C، در پایتون اختصاص و آزاد‌سازی حافظه (Memory) به صورت خودکار انجام می‌شود. پایتون برای آزاد‌سازی حافظه از دو روش «شمارش ارجاع» (Reference Counting) و «زباله روبی» [#f8]_ (Garbage Collection) بهره می‌گیرد. (البته فراموش نشود که صحبت در مورد پیاده‌سازی CPython است)
6161

6262
با اینکه پایتون یک زبان پویاست ولی در عین حال یک زبان «وابسته شدید به نوع» (Strongly Typed) نیز می‌باشد. در این نوع زبان‌ها (به مانند Java) تغییر ناگهانی و خودکار نوع داده (یا شی) انجام نمی‌شود؛ به عنوان نمونه چنانچه در پایتون عمل جمع بین یک نوع داده عددی مانند ``3`` و یک نوع داده غیر عددی مانند ``"7"`` صورت گیرد، یک خطای ``TypeError`` گزارش می‌گردد. در مقابل، زبان‌های «وابسته ضعیف به نوع» (Weak Typed) قرار دارند؛ در این زبان‌ها (به مانند Perl) نوع بر حسب موقعیت به صورت خودکار تغییر داده می‌شوند. در این مورد زبان‌های برنامه‌نویسی رفتارهای متفاوتی دارند،‌ به عنوان نمونه حاصل عبارت ``"7" + 3`` در زبان Perl با تبدیل (Convert)‌ خودکار نوع داده غیر عددی ``"7"`` به عدد (``7``)، مقدار ``10`` محاسبه می‌گردد.
6363

@@ -121,7 +121,7 @@ CPython (سی‌پایتون) پیاده‌سازی استاندارد و اصل
121121

122122
در هر پروژه‌ای بسته به چیزی که می‌خواهیم می‌بایست انتخاب نماییم. اگر مبنای کارایی برای یک پروژه در سرعت بالای اجرا باشد (مانند برنامه‌های سیستمی)؛‌ زبان C همیشه بهترین انتخاب است ولی اگر مبنا در سرعت بالای توسعه و صرفه جویی در منابع از جمله هزینه باشد انتخاب مناسب پایتون است. گاهی نیز بهترین کارایی با استفاده ترکیبی از زبان‌های متفاوت به دست می‌آید.
123123

124-
در بسیاری از کاربردها سرعت پایتون کاملا قابل قبول است، وجود بایت‌کد‌ موجب افزایش سرعت در اجراهای بعدی برنامه می‌شود و نکات برنامه‌نویسی زیادی برای بهبود سرعت اجرا در پایتون وجود دارد که در این کتاب به تدریج اشاره خواهد شد. نباید فراموش نکنیم که یکی از مهمترین عامل‌های کارایی داشتن الگوریتمی بهینه است و البته نوشتن ماژول‌ها به زبان C نیز موجب افزایش قابل توجه کارایی پایتون می‌شود - `پایتون کند است اگر اشتباه استفاده شود <http://apenwarr.ca/diary/2011-10-pycodeconf-apenwarr.pdf>`_ - با این وجود در حالت عادی اگر هزار مورد وجود داشته باشد که پایتون برای آن‌ها بهترین انتخاب باشد، سرعت یکی از آن‌ها نخواهد بود و برای توسعه برنامه‌هایی که سرعت اجرا نقش تعیین کننده‌ دارد باید از زبان‌های دیگری استفاده نمایید.
124+
در بسیاری از کاربردها سرعت پایتون کاملا قابل قبول است، وجود بایت‌کد‌ موجب افزایش سرعت در اجراهای بعدی برنامه می‌شود و نکات برنامه‌نویسی زیادی برای بهبود سرعت اجرا در پایتون وجود دارد که در این کتاب به تدریج اشاره خواهد شد. نباید فراموش کرد که یکی از مهمترین عامل‌های کارایی داشتن الگوریتمی بهینه است و البته نوشتن ماژول‌ها به زبان C نیز موجب افزایش قابل توجه کارایی پایتون می‌شود - `پایتون کند است اگر اشتباه استفاده شود <http://apenwarr.ca/diary/2011-10-pycodeconf-apenwarr.pdf>`_ - با این وجود در حالت عادی اگر هزار مورد وجود داشته باشد که پایتون برای آن‌ها بهترین انتخاب باشد، سرعت یکی از آن‌ها نخواهد بود و برای توسعه برنامه‌هایی که سرعت اجرا نقش تعیین کننده‌ دارد باید از زبان‌های دیگری استفاده نمایید.
125125

126126
لازم است به این نکته هم توجه داشته باشیم که تمام این صحبت‌ها در مورد پیاده‌سازی CPython از زبان پایتون بوده و پیاده‌سازی‌های دیگری نیز از زبان پایتون با هدف سرعت بالای اجرا (به مانند `PyPy <http://pypy.org/>`_) توسعه یافته است.
127127

Collapse file

‎lessons/l02.rst‎

Copy file name to clipboardExpand all lines: lessons/l02.rst
+1-1Lines changed: 1 addition & 1 deletion
  • Display the source diff
  • Display the rich diff
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
درس ۰۲: نصب و راه‌اندازی
1010
==========================
11-
در این درس به چگونگی نصب و راه‌اندازی پایتون در دو سیستم عامل ویندوز و گنولینوکس پرداخته و در پایان نیز توضیح مختصری از «سیستم مدیریت بسته» پایتون ارائه شده است.
11+
در این درس به چگونگی نصب و راه‌اندازی پایتون در دو سیستم عامل ویندوز و گنولینوکس پرداخته و در پایان نیز توضیح مختصری از «سیستم مدیریت بسته» پایتون ارایه شده است.
1212

1313
:emoji-size:`` سطح: پایه
1414

Collapse file

‎lessons/l03.rst‎

Copy file name to clipboardExpand all lines: lessons/l03.rst
+1-1Lines changed: 1 addition & 1 deletion
  • Display the source diff
  • Display the rich diff
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@
158158

159159
بر همین اساس کدگذاری اسکریپت first_script_2x.py را به دلیل استفاده از کاراکترهایی خارج از مجموعه ASCII (÷ و ×) به UTF-8 تغییر داده‌ایم. پایتون 3x به صورت پیش‌فرض از استاندارد یونیکد پشتیبانی می‌کند.
160160

161-
در زبان پایتون هر متنی که بعد از کاراکتر ”Number sign“ یا # (در همان سطر) قرار بگیرد توسط مفسر پایتون نادیده گرفته می‌شود و تاثیری در روند ترجمه و اجرای کدها ندارد، به این نوع متن‌ «توضیح» (کامنت Comment) گفته می‌شود و از آن برای مستندسازی (Documentation) ماژول یعنی ارایه توضیح در مورد بخشی از کد استفاده می‌گردد. ارائه توضیح نقش زیادی در خوانایی ماژول دارد و کمک می‌کند تا سایر افراد نیز بتوانند عملکرد کدهای ماژول (یا اسکریپت) شما را بفهمند.
161+
در زبان پایتون هر متنی که بعد از کاراکتر ”Number sign“ یا # (در همان سطر) قرار بگیرد توسط مفسر پایتون نادیده گرفته می‌شود و تاثیری در روند ترجمه و اجرای کدها ندارد، به این نوع متن‌ «توضیح» (کامنت Comment) گفته می‌شود و از آن برای مستندسازی (Documentation) ماژول یعنی ارایه توضیح در مورد بخشی از کد استفاده می‌گردد. ارایه توضیح نقش زیادی در خوانایی ماژول دارد و کمک می‌کند تا سایر افراد نیز بتوانند عملکرد کدهای ماژول (یا اسکریپت) شما را بفهمند.
162162

163163
.. note::
164164
کاراکتر نخست عبارت تعیین کدگذاری نیز # است ولی این سطر کامنت نبوده و درک آن برای مفسر با ارزش می‌باشد.
Collapse file

‎lessons/l04.rst‎

Copy file name to clipboardExpand all lines: lessons/l04.rst
+2-2Lines changed: 2 additions & 2 deletions
  • Display the source diff
  • Display the rich diff
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
-------------
1919
از درس پیش به خاطر داریم که کدهای پایتون را می‌توان به دو روش اجرا نمود: ۱- ایجاد اسکریپت و معرفی آن به مفسر پایتون که در همان درس بررسی شد ۲- به شکل تعاملی با مفسر پایتون که موضوع همین درس است.
2020

21-
پایتون یک زبان برنامه‌نویسی با قابلیت «حالت تعاملی» (Interactive Mode) است؛ این قابلیت که مبتنی بر خط فرمان است، امکانی را برای پردازش و اجرای کدهای (دستورها، عبارت‌ها [#f1]_ و تعریف‌ها) زبان پایتون فراهم می‌آورد. کدنویسی در این حالت به مانند زمانی است که یک اسکریپت را ایجاد می‌نمایید؛ منتها با هر بار فشردن کلید Enter صفحه کلید، مفسر پایتون آن را به صورت خودکار اجرا می‌کند.
21+
پایتون یک زبان برنامه‌نویسی با قابلیت «حالت تعاملی» (Interactive Mode) است؛ این قابلیت که مبتنی بر خط فرمان است، امکانی را برای پردازش و اجرای کدهای (دستورها، عبارت‌ها [#f1]_ و تعریف‌ها) زبان پایتون فراهم می‌آورد. کدنویسی در این حالت به مانند زمانی است که یک اسکریپت را ایجاد می‌نمایید؛ ولی با هر بار فشردن کلید Enter صفحه کلید، مفسر پایتون آن را به صورت خودکار اجرا می‌کند.
2222

2323
البته حالت تعاملی محدودیت‌هایی دارد که خواهید دید ولی از برخی زوایا بسیار مناسب و کاربردی است؛ به عنوان نمونه ممکن است قصد آزمودن یکی از قابلیت‌های زبان پایتون را داشته باشید یا اینکه بخواهید خروجی یک قطعه کد کوتاه را مشاهده نمایید که در این صورت ایجاد اسکریپت و سپس اجرای آن می‌تواند کار پر زحمتی به نظر برسد!،‌ از طرفی دریافت راهنمایی نیز از دیگر مزایای آن است که در یادآوری، شناخت و کسب آگاهی از موارد زبان پایتون (کلمه‌های کلیدی، تابع‌ها، کلاس‌ها، ماژول‌ها و...) بسیار کاربردی و مفید می‌باشد، حتی برخی نیز از این حالت پایتون به عنوان یک ماشین حساب بهره می‌گیرند!.
2424

@@ -329,7 +329,7 @@
329329

330330
* Qwarn: حاصل تقسیم دو عدد صحیح یک عدد صحیح باشد، به همراه نمایش پیام هشدار به ازای هر عملگر.
331331

332-
* Qwarnall: به مانند Qwarn است منتها به ازای تمام عملگرهای تقسیم به کار رفته در اسکریپت تنها یک پیام هشدار نمایش داده می‌شود.
332+
* Qwarnall: به مانند Qwarn است ولی به ازای تمام عملگرهای تقسیم به کار رفته در اسکریپت تنها یک پیام هشدار نمایش داده می‌شود.
333333

334334
::
335335

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.