Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion lectures/_toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ parts:
numbered: true
chapters:
- file: about_py
- file: Getting_started
- file: getting_started
# - file: python_by_example
# - file: functions
# - file: python_essentials
Expand Down
25 changes: 18 additions & 7 deletions lectures/about_py.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
---
jupytext:
text_representation:
extension: .md
format_name: myst
kernelspec:
display_name: Python 3
language: python
name: python3
---

# درباره ی این دوره

```{epigraph}
Expand All @@ -11,19 +22,19 @@ _ کریس ویگینس

در این درس:

<ul dir="rtl">

<li> پایتون را معرفی خواهیم کرد</li>

<li> برخی از ویژگی های پایتون را نشان خواهیم داد</li>
پایتون را معرفی خواهیم کرد

برخی از ویژگی های پایتون را نشان خواهیم داد

در رابطه با ارتباط پایتون و هوش مصنوعی بحث خواهیم کرد

<li> در رابطه با ارتباط پایتون و هوش مصنوعی بحث خواهیم کرد</li>
توضیح می دهیم که چرا پایتون زبان محبوب ما برای محاسبات علمی است

<li> توضیح می دهیم که چرا پایتون زبان محبوب ما برای محاسبات علمی است</li>
و شما را به ادامه ی مسیر و اهدافتان تشویق می کنیم.

<li> و شما را به ادامه ی مسیر و اهدافتان تشویق می کنیم.</li>

</ul>
همچنین شما نیازی به درک همه ی مواردی که در این درس خواهید دید، ندارید؛ زیرا در ادامه ی دروس تمامی جزئیات را آموزش خواهیم داد.

### آیا نمیتوانم فقط از ChatGPT استفاده کنم؟
Expand Down
2 changes: 2 additions & 0 deletions lectures/foo.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@

print("foobar")
117 changes: 63 additions & 54 deletions lectures/Getting_started.md → lectures/getting_started.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,29 @@
---
jupytext:
text_representation:
extension: .md
format_name: myst
kernelspec:
display_name: Python 3
language: python
name: python3
---

# بیاین شروع کنیم

## مقدمه
در این بخش شما خواهید آموخت که چگونه:

<ul dir="rtl">
<li>از پایتون در فضای ابری استفاده کنید</li>
از پایتون در فضای ابری استفاده کنید
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Zahra-khanzadeh I have removed some html list objects here that we should add back in using markdown syntax.


<li>یک محیط محلی پایتون راه اندازی و اجرا کنید</li>
یک محیط محلی پایتون راه اندازی و اجرا کنید

<li>دستورات ساده ی پایتون را اجرا کنید</li>
دستورات ساده ی پایتون را اجرا کنید

<li>یک نمونه از برنامه را اجرا کنید</li>
یک نمونه از برنامه را اجرا کنید

<li>کتابخانه های برنامه نویسی موردنیاز برای این دوره را نصب کنید</li>
کتابخانه های برنامه نویسی موردنیاز برای این دوره را نصب کنید

</ul>

## پایتون در فضای ابری
ساده ترین راه برای شروع کدنویسی در پایتون، اجرای آن در فضای ابری است. ( یعنی با استفاده از یک سرور از راه دور که از قبل روی آن پایتون نصب شده است.)
Expand Down Expand Up @@ -45,65 +54,65 @@

نکات:

<ul dir="rtl">
<li>اطمینان حاصل کنید که نسخه ی مناسب سیستم عامل خود را نصب می کنید.</li>
<li>اگر در طول فرایند نصب از شما پرسیده شد که آیا آناکوندا را به عنوان نصب پیش فرض پایتون انتخاب می کنید، گزینه "بله" را انتخاب کنید.</li>
</ul>

اطمینان حاصل کنید که نسخه ی مناسب سیستم عامل خود را نصب می کنید.
اگر در طول فرایند نصب از شما پرسیده شد که آیا آناکوندا را به عنوان نصب پیش فرض پایتون انتخاب می کنید، گزینه "بله" را انتخاب کنید.


### به روزرسانی آناکوندا
آناکوندا ابزاری به اسم `conda` برای مدیریت و ارتقاء بسته های آناکوندای شما فراهم می کند. یکی از دستورات `کوندا` که باید به طور منظم اجرا کنید، دستوری است که کل توزیع آناکوندا را به روز می کند.
به عنوان یک تمرین، لطفا مراحل زیر را اجرا کنید:
<ul dir="rtl">

1. یک ترمینال باز کنید

2.عبارت ` conda update anaconda ` را تایپ کنید
</ul>


برای اطلاعات بیشتر درباره کوندا، در ترمینال عبارت " conda help " را تایپ کنید.

## ژوپیتر نوت بوک
[ژوپیتر](http://jupyter.org/) نوت بوک ها یکی از چندین راه های قابل دسترس برای ارتباط برقرار کردن با پایتون هستند.
ژوپیتر نوت بوک ها از یک رابط مبتنی بر مرورگر برای دسترسی به پایتون استفاده می کنند که دارای ویژگی های زیر است:
<ul dir="rtl">
<li>قابلیت نوشتن و اجرای دستورات پایتون</li>
<li>خروجی قالب بندی شده در مرورگر، شامل جداول، نمودارها، انیمیشن ها و غیره</li>
<li>امکان ترکیب متن قالب بندی شده و نمایش عبارات ریاضی </li>
</ul>

قابلیت نوشتن و اجرای دستورات پایتون
خروجی قالب بندی شده در مرورگر، شامل جداول، نمودارها، انیمیشن ها و غیره
امکان ترکیب متن قالب بندی شده و نمایش عبارات ریاضی


به دلیل این قابلیت ها، امروزه ژوپیتر یکی از ابزارهای مهم در اکوسیستم محاسبات علمی محسوب می شود.
در [اینجا](http://matplotlib.org/examples/pylab_examples/hexbin_demo.html) تصویری از اجرای کد در یک ژوپیتر نوت بوک آورده شده است.

![نمونه اجرای کد](images/getting-started/jp_demo.png)

درحالیکه ژوپیتر تنها روش برنامه نویسی در پایتون نیست، اما بهترین گزینه برای موقعیت هایی است که:
<ul dir="rtl">
<li>می خواهید برنامه نویسی با پایتون را شروع کنید</li>
<li>ایده های جدید را آزمایش کنید یا فقط بخش های کوچکی از کد را بررسی کنید</li>
<li>قصد دارید از محیط های تعاملی قدرتمند آنلاین مانند <a href="https://research.google.com/colaboratory/">Google Colab</a> استفاده کنید</li>
<li>می خواهید ایده های علمی خود را با دانشجویان یا همکاران خود به اشتراک بگذارید و با آنها همکاری کنید</li>
</ul>

می خواهید برنامه نویسی با پایتون را شروع کنید
ایده های جدید را آزمایش کنید یا فقط بخش های کوچکی از کد را بررسی کنید
قصد دارید از محیط های تعاملی قدرتمند آنلاین مانند <a href="https://research.google.com/colaboratory/">Google Colab</a> استفاده کنید
می خواهید ایده های علمی خود را با دانشجویان یا همکاران خود به اشتراک بگذارید و با آنها همکاری کنید

این مجموعه دروس نیز برای اجرا در ژوپیتر نوت بوک ها طراحی شده اند.

### راه اندازی ژوپیتر نوت بوک

بعد از نصب آناکوندا، شما می توانید ژوپیتر نوت بوک را اجرا کنید.

برای اینکار می توانید:
<ul dir="rtl">
<li>در منوی برنامه های خود به دنبال Jupyter بگردید</li>
<li>یک ترمینال باز کنید و دستور <code>jupyter notebook</code>را اجرا کنید</li>
</ul>

در منوی برنامه های خود به دنبال Jupyter بگردید
یک ترمینال باز کنید و دستور <code>jupyter notebook</code>را اجرا کنید

**کاربران ویندوز باید به جای "ترمینال" از "Anaconda Command Prompt" استفاده کنند.**

اگر روش دوم را انتخاب کنید، با چیزی مشابه تصویر زیر رو به رو خواهید شد.

![ترمینال](images/getting-started/starting_nb.png)

خروجی نشان می دهد که نوت بوک در `/http://localhost:8888` در حال اجرا است.
<ul dir="rtl">
<li><code>localhost</code> اسم رایانه ی محلی شماست</li>
<li>8888 <a href="https://research.google.com/colaboratory/">شماره پورتی</a> است که رایانه ی شما از آن استفاده می کند</li>
</ul>

<code>localhost</code> اسم رایانه ی محلی شماست
8888 <a href="https://research.google.com/colaboratory/">شماره پورتی</a> است که رایانه ی شما از آن استفاده می کند


بنابراین، هسته ی ژوپیتر در حال دریافت دستورات پایتون از طریق پورت 8888 در رایانه ی محلی شماست.

Expand Down Expand Up @@ -147,22 +156,22 @@
دوحالت اصلی وجود دارد:

1.حالت ویرایش (Edit mode)
<ul dir="rtl">
<li>با یک کادر سبز دور سلول و یک مکان نمای چشمک زن مشخص می شود.</li>
<li>هر چیزی که تایپ کنید، به همان شکل در سلول نوشته می شود.</li>
</ul>

با یک کادر سبز دور سلول و یک مکان نمای چشمک زن مشخص می شود.
هر چیزی که تایپ کنید، به همان شکل در سلول نوشته می شود.


2.حالت فرمان (Command mode)
<ul dir="rtl">
<li>کادر سبز با یک کادر آبی جایگزین می شود.</li>
<li>کلیدهای صفحه کلید به عنوان فرمان تفسیر می شوند. (مثلا با زدن کلید <code>b</code> ، یک سلول جدید در زیر سلول فعلی ایجاد می شود).</li>
</ul>

کادر سبز با یک کادر آبی جایگزین می شود.
کلیدهای صفحه کلید به عنوان فرمان تفسیر می شوند. (مثلا با زدن کلید <code>b</code> ، یک سلول جدید در زیر سلول فعلی ایجاد می شود).


برای جا به جایی بین حالت ها:
<ul dir="rtl">
<li>برای رفتن از حالت ویرایش به حالت فرمان: کلید <code>Esc</code> یا <code>Ctrl + M</code> را بزنید.</li>
<li>برای رفتن از حالت فرمان به حالت ویرایش: کلید <code>Enter</code> را فشار دهید یا درون یک سلول کلیک کنید.</li>
</ul>

برای رفتن از حالت ویرایش به حالت فرمان: کلید <code>Esc</code> یا <code>Ctrl + M</code> را بزنید.
برای رفتن از حالت فرمان به حالت ویرایش: کلید <code>Enter</code> را فشار دهید یا درون یک سلول کلیک کنید.

وقتی به این رفتار حالت محور عادت کنید، کار با ژوپیتر نوت بوک بسیار سریع و کارآمد خواهد بود.

#### وارد کردن یونیکد (مثلا حروف یونانی)
Expand Down Expand Up @@ -213,14 +222,14 @@ plt.show()

در جلسه ی قبل این خط از کد را اجرا کردیم: `import numpy as np`

<ul dir="rtl">
<li>Numpy یک کتابخانه ی عددی است که به طور گسترده با آن کار خواهیم کرد.</li>
</ul>

Numpy یک کتابخانه ی عددی است که به طور گسترده با آن کار خواهیم کرد.


بعد از این دستور، می توانیم به توابع کتابخانه Numpy با استفاده از نحو `np.function_name`دسترسی داشته باشیم.
<ul dir="rtl">
<li>برای مثال بیاید دستور <code>np.random.randn(3)</code> را امتحان کنید.</li>
</ul>

برای مثال بیاید دستور <code>np.random.randn(3)</code> را امتحان کنید.


می توانیم ویژگی های مختلف `np` را با استفاده از کلید Tab بررسی کنیم.

Expand Down Expand Up @@ -400,10 +409,10 @@ print("foobar")

یک ویرایشگر خوب امکانات زیر را ارائه می دهد:

<ul dir="rtl">
<li>فرمان های کارآمد برای ویرایش متن(مثل کپی، جایگذاری، جست وجو و جایگزینی)</li>
<li>برجسته سازی نحوی (syntax highlighting) برای خوانایی بهتر کد و امکانات مشابه دیگر </li>
</ul>

فرمان های کارآمد برای ویرایش متن(مثل کپی، جایگذاری، جست وجو و جایگزینی)
برجسته سازی نحوی (syntax highlighting) برای خوانایی بهتر کد و امکانات مشابه دیگر


در حال حاضر، یکی از محبوب ترین ویرایشگرهای متنی برای برنامه نویسی [VS Code](https://code.visualstudio.com/) است، که کاربری بسیار آسانی دارد و افزونه های باکیفیت زیادی برای آن عرضه شده است.

Expand Down
Loading