diff --git a/lectures/_toc.yml b/lectures/_toc.yml
index c2ff838..2d37226 100644
--- a/lectures/_toc.yml
+++ b/lectures/_toc.yml
@@ -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
diff --git a/lectures/about_py.md b/lectures/about_py.md
index 8e78bae..1dab58b 100644
--- a/lectures/about_py.md
+++ b/lectures/about_py.md
@@ -1,3 +1,14 @@
+---
+jupytext:
+ text_representation:
+ extension: .md
+ format_name: myst
+kernelspec:
+ display_name: Python 3
+ language: python
+ name: python3
+---
+
# درباره ی این دوره
```{epigraph}
@@ -11,19 +22,19 @@ _ کریس ویگینس
در این درس:
-
- - پایتون را معرفی خواهیم کرد
- - برخی از ویژگی های پایتون را نشان خواهیم داد
+ پایتون را معرفی خواهیم کرد
+
+ برخی از ویژگی های پایتون را نشان خواهیم داد
+
+ در رابطه با ارتباط پایتون و هوش مصنوعی بحث خواهیم کرد
- - در رابطه با ارتباط پایتون و هوش مصنوعی بحث خواهیم کرد
+ توضیح می دهیم که چرا پایتون زبان محبوب ما برای محاسبات علمی است
- - توضیح می دهیم که چرا پایتون زبان محبوب ما برای محاسبات علمی است
+ و شما را به ادامه ی مسیر و اهدافتان تشویق می کنیم.
- - و شما را به ادامه ی مسیر و اهدافتان تشویق می کنیم.
-
همچنین شما نیازی به درک همه ی مواردی که در این درس خواهید دید، ندارید؛ زیرا در ادامه ی دروس تمامی جزئیات را آموزش خواهیم داد.
### آیا نمیتوانم فقط از ChatGPT استفاده کنم؟
diff --git a/lectures/foo.py b/lectures/foo.py
new file mode 100644
index 0000000..14cce62
--- /dev/null
+++ b/lectures/foo.py
@@ -0,0 +1,2 @@
+
+print("foobar")
diff --git a/lectures/Getting_started.md b/lectures/getting_started.md
similarity index 86%
rename from lectures/Getting_started.md
rename to lectures/getting_started.md
index 03b0b38..3c75d76 100644
--- a/lectures/Getting_started.md
+++ b/lectures/getting_started.md
@@ -1,20 +1,29 @@
+---
+jupytext:
+ text_representation:
+ extension: .md
+ format_name: myst
+kernelspec:
+ display_name: Python 3
+ language: python
+ name: python3
+---
+
# بیاین شروع کنیم
## مقدمه
در این بخش شما خواهید آموخت که چگونه:
-
- - از پایتون در فضای ابری استفاده کنید
+از پایتون در فضای ابری استفاده کنید
- - یک محیط محلی پایتون راه اندازی و اجرا کنید
+یک محیط محلی پایتون راه اندازی و اجرا کنید
- - دستورات ساده ی پایتون را اجرا کنید
+دستورات ساده ی پایتون را اجرا کنید
- - یک نمونه از برنامه را اجرا کنید
+یک نمونه از برنامه را اجرا کنید
- - کتابخانه های برنامه نویسی موردنیاز برای این دوره را نصب کنید
+کتابخانه های برنامه نویسی موردنیاز برای این دوره را نصب کنید
-
## پایتون در فضای ابری
ساده ترین راه برای شروع کدنویسی در پایتون، اجرای آن در فضای ابری است. ( یعنی با استفاده از یک سرور از راه دور که از قبل روی آن پایتون نصب شده است.)
@@ -45,30 +54,30 @@
نکات:
-
- - اطمینان حاصل کنید که نسخه ی مناسب سیستم عامل خود را نصب می کنید.
- - اگر در طول فرایند نصب از شما پرسیده شد که آیا آناکوندا را به عنوان نصب پیش فرض پایتون انتخاب می کنید، گزینه "بله" را انتخاب کنید.
-
+
+ اطمینان حاصل کنید که نسخه ی مناسب سیستم عامل خود را نصب می کنید.
+ اگر در طول فرایند نصب از شما پرسیده شد که آیا آناکوندا را به عنوان نصب پیش فرض پایتون انتخاب می کنید، گزینه "بله" را انتخاب کنید.
+
### به روزرسانی آناکوندا
آناکوندا ابزاری به اسم `conda` برای مدیریت و ارتقاء بسته های آناکوندای شما فراهم می کند. یکی از دستورات `کوندا` که باید به طور منظم اجرا کنید، دستوری است که کل توزیع آناکوندا را به روز می کند.
به عنوان یک تمرین، لطفا مراحل زیر را اجرا کنید:
-
+
1. یک ترمینال باز کنید
2.عبارت ` conda update anaconda ` را تایپ کنید
-
+
برای اطلاعات بیشتر درباره کوندا، در ترمینال عبارت " conda help " را تایپ کنید.
## ژوپیتر نوت بوک
[ژوپیتر](http://jupyter.org/) نوت بوک ها یکی از چندین راه های قابل دسترس برای ارتباط برقرار کردن با پایتون هستند.
ژوپیتر نوت بوک ها از یک رابط مبتنی بر مرورگر برای دسترسی به پایتون استفاده می کنند که دارای ویژگی های زیر است:
-
- - قابلیت نوشتن و اجرای دستورات پایتون
- - خروجی قالب بندی شده در مرورگر، شامل جداول، نمودارها، انیمیشن ها و غیره
- - امکان ترکیب متن قالب بندی شده و نمایش عبارات ریاضی
-
+
+ قابلیت نوشتن و اجرای دستورات پایتون
+ خروجی قالب بندی شده در مرورگر، شامل جداول، نمودارها، انیمیشن ها و غیره
+ امکان ترکیب متن قالب بندی شده و نمایش عبارات ریاضی
+
به دلیل این قابلیت ها، امروزه ژوپیتر یکی از ابزارهای مهم در اکوسیستم محاسبات علمی محسوب می شود.
در [اینجا](http://matplotlib.org/examples/pylab_examples/hexbin_demo.html) تصویری از اجرای کد در یک ژوپیتر نوت بوک آورده شده است.
@@ -76,12 +85,12 @@

درحالیکه ژوپیتر تنها روش برنامه نویسی در پایتون نیست، اما بهترین گزینه برای موقعیت هایی است که:
-
- - می خواهید برنامه نویسی با پایتون را شروع کنید
- - ایده های جدید را آزمایش کنید یا فقط بخش های کوچکی از کد را بررسی کنید
- - قصد دارید از محیط های تعاملی قدرتمند آنلاین مانند Google Colab استفاده کنید
- - می خواهید ایده های علمی خود را با دانشجویان یا همکاران خود به اشتراک بگذارید و با آنها همکاری کنید
-
+
+ می خواهید برنامه نویسی با پایتون را شروع کنید
+ ایده های جدید را آزمایش کنید یا فقط بخش های کوچکی از کد را بررسی کنید
+ قصد دارید از محیط های تعاملی قدرتمند آنلاین مانند Google Colab استفاده کنید
+ می خواهید ایده های علمی خود را با دانشجویان یا همکاران خود به اشتراک بگذارید و با آنها همکاری کنید
+
این مجموعه دروس نیز برای اجرا در ژوپیتر نوت بوک ها طراحی شده اند.
### راه اندازی ژوپیتر نوت بوک
@@ -89,10 +98,10 @@
بعد از نصب آناکوندا، شما می توانید ژوپیتر نوت بوک را اجرا کنید.
برای اینکار می توانید:
-
- - در منوی برنامه های خود به دنبال Jupyter بگردید
- - یک ترمینال باز کنید و دستور
jupyter notebookرا اجرا کنید
-
+
+ در منوی برنامه های خود به دنبال Jupyter بگردید
+ یک ترمینال باز کنید و دستور jupyter notebookرا اجرا کنید
+
**کاربران ویندوز باید به جای "ترمینال" از "Anaconda Command Prompt" استفاده کنند.**
اگر روش دوم را انتخاب کنید، با چیزی مشابه تصویر زیر رو به رو خواهید شد.
@@ -100,10 +109,10 @@

خروجی نشان می دهد که نوت بوک در `/http://localhost:8888` در حال اجرا است.
-
- localhost اسم رایانه ی محلی شماست
- - 8888 شماره پورتی است که رایانه ی شما از آن استفاده می کند
-
+
+ localhost اسم رایانه ی محلی شماست
+ 8888 شماره پورتی است که رایانه ی شما از آن استفاده می کند
+
بنابراین، هسته ی ژوپیتر در حال دریافت دستورات پایتون از طریق پورت 8888 در رایانه ی محلی شماست.
@@ -147,22 +156,22 @@
دوحالت اصلی وجود دارد:
1.حالت ویرایش (Edit mode)
-
- - با یک کادر سبز دور سلول و یک مکان نمای چشمک زن مشخص می شود.
- - هر چیزی که تایپ کنید، به همان شکل در سلول نوشته می شود.
-
+
+ با یک کادر سبز دور سلول و یک مکان نمای چشمک زن مشخص می شود.
+ هر چیزی که تایپ کنید، به همان شکل در سلول نوشته می شود.
+
2.حالت فرمان (Command mode)
-
- - کادر سبز با یک کادر آبی جایگزین می شود.
- - کلیدهای صفحه کلید به عنوان فرمان تفسیر می شوند. (مثلا با زدن کلید
b ، یک سلول جدید در زیر سلول فعلی ایجاد می شود).
-
+
+ کادر سبز با یک کادر آبی جایگزین می شود.
+ کلیدهای صفحه کلید به عنوان فرمان تفسیر می شوند. (مثلا با زدن کلید b ، یک سلول جدید در زیر سلول فعلی ایجاد می شود).
+
برای جا به جایی بین حالت ها:
-
- - برای رفتن از حالت ویرایش به حالت فرمان: کلید
Esc یا Ctrl + M را بزنید.
- - برای رفتن از حالت فرمان به حالت ویرایش: کلید
Enter را فشار دهید یا درون یک سلول کلیک کنید.
-
+
+ برای رفتن از حالت ویرایش به حالت فرمان: کلید Esc یا Ctrl + M را بزنید.
+ برای رفتن از حالت فرمان به حالت ویرایش: کلید Enter را فشار دهید یا درون یک سلول کلیک کنید.
+
وقتی به این رفتار حالت محور عادت کنید، کار با ژوپیتر نوت بوک بسیار سریع و کارآمد خواهد بود.
#### وارد کردن یونیکد (مثلا حروف یونانی)
@@ -213,14 +222,14 @@ plt.show()
در جلسه ی قبل این خط از کد را اجرا کردیم: `import numpy as np`
-
- - Numpy یک کتابخانه ی عددی است که به طور گسترده با آن کار خواهیم کرد.
-
+
+ Numpy یک کتابخانه ی عددی است که به طور گسترده با آن کار خواهیم کرد.
+
بعد از این دستور، می توانیم به توابع کتابخانه Numpy با استفاده از نحو `np.function_name`دسترسی داشته باشیم.
-
- - برای مثال بیاید دستور
np.random.randn(3) را امتحان کنید.
-
+
+ برای مثال بیاید دستور np.random.randn(3) را امتحان کنید.
+
می توانیم ویژگی های مختلف `np` را با استفاده از کلید Tab بررسی کنیم.
@@ -400,10 +409,10 @@ print("foobar")
یک ویرایشگر خوب امکانات زیر را ارائه می دهد:
-
- - فرمان های کارآمد برای ویرایش متن(مثل کپی، جایگذاری، جست وجو و جایگزینی)
- - برجسته سازی نحوی (syntax highlighting) برای خوانایی بهتر کد و امکانات مشابه دیگر
-
+
+ فرمان های کارآمد برای ویرایش متن(مثل کپی، جایگذاری، جست وجو و جایگزینی)
+ برجسته سازی نحوی (syntax highlighting) برای خوانایی بهتر کد و امکانات مشابه دیگر
+
در حال حاضر، یکی از محبوب ترین ویرایشگرهای متنی برای برنامه نویسی [VS Code](https://code.visualstudio.com/) است، که کاربری بسیار آسانی دارد و افزونه های باکیفیت زیادی برای آن عرضه شده است.