You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: lectures/about_py.md
+53-22Lines changed: 53 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,17 +23,15 @@ _ کریس ویگینس
23
23
در این درس:
24
24
25
25
26
+
* پایتون را معرفی خواهیم کرد
26
27
27
-
پایتون را معرفی خواهیم کرد
28
+
* برخی از ویژگی های پایتون را نشان خواهیم داد
28
29
29
-
برخی از ویژگی های پایتون را نشان خواهیم داد
30
+
* در رابطه با ارتباط پایتون و هوش مصنوعی بحث خواهیم کرد
30
31
31
-
در رابطه با ارتباط پایتون و هوش مصنوعی بحث خواهیم کرد
32
-
33
-
توضیح می دهیم که چرا پایتون زبان محبوب ما برای محاسبات علمی است
34
-
35
-
و شما را به ادامه ی مسیر و اهدافتان تشویق می کنیم.
32
+
* توضیح می دهیم که چرا پایتون زبان محبوب ما برای محاسبات علمی است
36
33
34
+
* و شما را به ادامه ی مسیر و اهدافتان تشویق می کنیم.
37
35
38
36
همچنین شما نیازی به درک همه ی مواردی که در این درس خواهید دید، ندارید؛ زیرا در ادامه ی دروس تمامی جزئیات را آموزش خواهیم داد.
39
37
@@ -60,17 +58,41 @@ _ کریس ویگینس
60
58
61
59
این موضوع مهم است زیرا:
62
60
63
-
پولمان را پس انداز می کند، به جای یک شرکت انتفاعی، توسط جامعه ی کاربران کنترل می شود و قابلیت تکثیر و [علم باز](https://en.wikipedia.org/wiki/Open_science) را تشویق می کند.
61
+
* پولمان را پس انداز می کند
62
+
63
+
* به جای یک شرکت انتفاعی، توسط جامعه ی کاربران کنترل می شود
64
+
65
+
* و قابلیت تکثیر و [علم باز](https://en.wikipedia.org/wiki/Open_science) را تشویق می کند.
64
66
65
67
### کاربردهای رایج پایتون
66
68
67
69
پایتون یک زبان همه منظوره است که تقریبا در همه ی حوزه های کاربردی از جمله موارد زیر استفاده می شود:
68
70
69
-
هوش مصنوعی، محاسبات علمی، ارتباطات، توسعه ی وب، CGI و رابط های کاربری گرافیکی، توسعه ی بازی، محتوای چندرسانه ای و غیره.
71
+
* هوش مصنوعی
72
+
73
+
* محاسبات علمی
74
+
75
+
* ارتباطات
76
+
77
+
* توسعه ی وب
78
+
79
+
* رابط های کاربری گرافیکی و CGI
80
+
81
+
* توسعه ی بازی
82
+
83
+
* محتوای چندرسانه ای
84
+
85
+
* و غیره.
70
86
71
87
همچنین بطور گسترده ای توسط شرکت های زیر و بسیاری دیگر از شرکت ها مورد استفاده و پشتیبانی قرار می گیرد:
همچنین می توانید نمونه های بیشتری را در [گالری تصاویر Matplotlib](https://matplotlib.org/stable/gallery/index.html) بیابید.
278
300
279
-
سایر کتابخانه های گرافیکی عبارتند از [seaborn](https://seaborn.pydata.org/)، [Plotly](https://plot.ly/python/) (یک رابط سطح بالا برای Matplotlib می باشد)، [Altair](https://altair-viz.github.io/) و [Bokeh](http://bokeh.pydata.org/en/latest/) .
301
+
سایر کتابخانه های گرافیکی عبارتند از:
302
+
303
+
*[Plotly](https://plot.ly/python/)
304
+
305
+
*[seaborn](https://seaborn.pydata.org/)(یک رابط سطح بالا برای Matplotlib می باشد)
306
+
307
+
*[Altair](https://altair-viz.github.io/)
308
+
309
+
*[Bokeh](http://bokeh.pydata.org/en/latest/) .
280
310
281
311
همچنین برای مشاهده نمونه های بیشتری از نمودارهای رسم شده با استفاده از کتابخانه های مختلف، می توانید به [گالری نمودارهای پایتون](https://www.python-graph-gallery.com/) مراجعه کنید.
282
312
@@ -323,26 +353,27 @@ plt.show()
323
353
324
354
در اینجا فهرست کوتاهی از چند کتابخانه ی علمی مهم برای پایتون که پیشتر نگفتیم برایتان آورده ایم:
325
355
326
-
[SymPy](http://www.sympy.org/): برای جبر نمادین، از جمله محاسبه ی حد، مشتق و انتگرال
356
+
*[SymPy](http://www.sympy.org/): برای جبر نمادین، از جمله محاسبه ی حد، مشتق و انتگرال
357
+
358
+
*[statsmodels](http://statsmodels.sourceforge.net/): برای توابع آماری
327
359
328
-
[statsmodels](http://statsmodels.sourceforge.net/): برای توابع آماری
360
+
*[scikit-learn](http://scikit-learn.org/): برای یادگیری ماشین
329
361
330
-
[scikit-learn](http://scikit-learn.org/): برای یادگیری ماشین
362
+
*[Keras](https://keras.io/): برای یادگیری ماشین
331
363
332
-
[Keras](https://keras.io/): برای یادگیری ماشین
364
+
*[Pyro](https://pyro.ai/) و [PyStan](https://pystan.readthedocs.org/en/latest/): برای تحلیل داده های بیزی
333
365
334
-
[Pyro](https://pyro.ai/) و [PyStan](https://pystan.readthedocs.org/en/latest/): برای تحلیل داده های بیزی
366
+
*[GeoPandas](https://geopandas.org/en/stable/): برای تحلیل داده های مکانی
335
367
336
-
[GeoPandas](https://geopandas.org/en/stable/): برای تحلیل داده های مکانی
368
+
*[Dask](https://docs.dask.org/en/stable/): برای پردازش موازی
337
369
338
-
[Dask](https://docs.dask.org/en/stable/): برای پردازش موازی
370
+
*[Numba](http://numba.pydata.org/): اجرای پایتون با سرعت برابر با کدهای سطح پایین قابل اجرا توسط سخت افزار
339
371
340
-
[Numba](http://numba.pydata.org/): اجرای پایتون با سرعت برابر با کدهای سطح پایین قابل اجرا توسط سخت افزار
372
+
*[CVXPY](https://www.cvxpy.org/): برای بهینه سازی محدب
341
373
342
-
[CVXPY](https://www.cvxpy.org/): برای بهینه سازی محدب
374
+
*[scikit-image](https://scikit-image.org/) و [OpenCV](https://opencv.org/): برای پردازش و تحلیل داده های تصویری
343
375
344
-
[scikit-image](https://scikit-image.org/) و [OpenCV](https://opencv.org/): برای پردازش و تحلیل داده های تصویری
376
+
*[BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/bs4/doc/): XML و HTML برای استخراج داده ها از فایل های
345
377
346
-
[BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/bs4/doc/): XML و HTML برای استخراج داده ها از فایل های
347
378
348
379
در این مجموعه خواهیم آموخت که چگونه از بسیاری از این کتابخانه ها برای کارهای محاسباتی علمی در اقتصاد و امور مالی استفاده کنیم.
خروجی نشان می دهد که نوت بوک در `/http://localhost:8888` در حال اجرا است.
112
119
113
-
<code>localhost</code> اسم رایانه ی محلی شماست
114
-
8888 <ahref="https://research.google.com/colaboratory/">شماره پورتی</a> است که رایانه ی شما از آن استفاده می کند
120
+
*`localhost` اسم رایانه ی محلی شماست
121
+
122
+
*`8888`[شماره پورتی](https://en.wikipedia.org/wiki/Port_%28computer_networking%29) است که رایانه ی شما از آن استفاده می کند
115
123
116
124
117
125
بنابراین، هسته ی ژوپیتر در حال دریافت دستورات پایتون از طریق پورت 8888 در رایانه ی محلی شماست.
@@ -155,22 +163,25 @@ kernelspec:
155
163
156
164
دوحالت اصلی وجود دارد:
157
165
158
-
1.حالت ویرایش (Edit mode)
166
+
1. حالت ویرایش (Edit mode)
167
+
168
+
* با یک کادر سبز دور سلول و یک مکان نمای چشمک زن مشخص می شود.
159
169
160
-
با یک کادر سبز دور سلول و یک مکان نمای چشمک زن مشخص می شود.
161
-
هر چیزی که تایپ کنید، به همان شکل در سلول نوشته می شود.
170
+
* هر چیزی که تایپ کنید، به همان شکل در سلول نوشته می شود.
162
171
163
172
164
-
2.حالت فرمان (Command mode)
173
+
1.حالت فرمان (Command mode)
165
174
166
-
کادر سبز با یک کادر آبی جایگزین می شود.
167
-
کلیدهای صفحه کلید به عنوان فرمان تفسیر می شوند. (مثلا با زدن کلید <code>b</code> ، یک سلول جدید در زیر سلول فعلی ایجاد می شود).
175
+
* کادر سبز با یک کادر آبی جایگزین می شود.
176
+
177
+
* کلیدهای صفحه کلید به عنوان فرمان تفسیر می شوند. (مثلا با زدن کلید `b` ، یک سلول جدید در زیر سلول فعلی ایجاد می شود).
168
178
169
179
170
180
برای جا به جایی بین حالت ها:
171
181
172
-
برای رفتن از حالت ویرایش به حالت فرمان: کلید <code>Esc</code> یا <code>Ctrl + M</code> را بزنید.
173
-
برای رفتن از حالت فرمان به حالت ویرایش: کلید <code>Enter</code> را فشار دهید یا درون یک سلول کلیک کنید.
182
+
* برای رفتن از حالت ویرایش به حالت فرمان: کلید `Esc` یا `Ctrl-M` را بزنید.
183
+
184
+
* برای رفتن از حالت فرمان به حالت ویرایش: کلید `Enter` را فشار دهید یا درون یک سلول کلیک کنید.
174
185
175
186
وقتی به این رفتار حالت محور عادت کنید، کار با ژوپیتر نوت بوک بسیار سریع و کارآمد خواهد بود.
176
187
@@ -223,13 +234,12 @@ plt.show()
223
234
در جلسه ی قبل این خط از کد را اجرا کردیم: `import numpy as np`
224
235
225
236
226
-
Numpy یک کتابخانه ی عددی است که به طور گسترده با آن کار خواهیم کرد.
237
+
* Numpy یک کتابخانه ی عددی است که به طور گسترده با آن کار خواهیم کرد.
227
238
228
239
229
240
بعد از این دستور، می توانیم به توابع کتابخانه Numpy با استفاده از نحو `np.function_name`دسترسی داشته باشیم.
230
241
231
-
برای مثال بیاید دستور <code>np.random.randn(3)</code> را امتحان کنید.
232
-
242
+
* برای مثال بیاید دستور `np.random.randn(3)` را امتحان کنید.
233
243
234
244
می توانیم ویژگی های مختلف `np` را با استفاده از کلید Tab بررسی کنیم.
235
245
@@ -383,9 +393,9 @@ print("foobar")
383
393
384
394
اگر با کدی مواجه شدید که در یک فایل با پسوند `*.py` ذخیره شده است، لازم است به این دو سوال توجه کنید:
385
395
386
-
1.چگونه باید آن را اجرا کرد؟
396
+
1.چگونه باید آن را اجرا کرد؟
387
397
388
-
2.چگونه می توان آن را ویرایش یا تغییری در آن اعمال کرد؟
398
+
1.چگونه می توان آن را ویرایش یا تغییری در آن اعمال کرد؟
389
399
390
400
برای این کارها شما دو گزینه پیش روی خود دارید!
391
401
@@ -410,8 +420,8 @@ print("foobar")
410
420
یک ویرایشگر خوب امکانات زیر را ارائه می دهد:
411
421
412
422
413
-
فرمان های کارآمد برای ویرایش متن(مثل کپی، جایگذاری، جست وجو و جایگزینی)
414
-
برجسته سازی نحوی (syntax highlighting) برای خوانایی بهتر کد و امکانات مشابه دیگر
423
+
* فرمان های کارآمد برای ویرایش متن(مثل کپی، جایگذاری، جست وجو و جایگزینی)
424
+
* برجسته سازی نحوی (syntax highlighting) برای خوانایی بهتر کد و امکانات مشابه دیگر
415
425
416
426
417
427
در حال حاضر، یکی از محبوب ترین ویرایشگرهای متنی برای برنامه نویسی [VS Code](https://code.visualstudio.com/) است، که کاربری بسیار آسانی دارد و افزونه های باکیفیت زیادی برای آن عرضه شده است.
@@ -434,14 +444,14 @@ print("foobar")
434
444
435
445
اکنون وقت آن است که:
436
446
437
-
1.مرورگر خود را اجرا کنید (یا اگر باز است، یک تب جدید باز کنید.)
447
+
1.مرورگر خود را اجرا کنید (یا اگر باز است، یک تب جدید باز کنید.)
438
448
439
-
2.آدرسی که در مرحله قبل داده شده (مثلا `http://localhost:8888`) را در نوار آدرس وارد کنید.
449
+
1.آدرسی که در مرحله قبل داده شده (مثلا `http://localhost:8888`) را در نوار آدرس وارد کنید.
440
450
441
451
اکنون باید بتوانید یک جلسه ی معمولی از نوت بوک ژوپیتر را اجرا کنید.
442
452
443
453
این روش، جایگزین دیگری برای اجرای نوت بوک است که می تواند در برخی موقعیت ها مفید باشد.
444
-
برای نمونه، اگر صفحه ی وب تصادفا بسته شود ولی هسته ی ژوپیتر هنوز فعال باشد، همچنان میتوانید از این طریق دوباره به نوت بوک دسترسی پیدا کنید.
454
+
برای نمونه، اگر صفحه ی وب تصادفا بسته شود ولی هسته ی ژوپیتر هنوز فعال باشد، همچنان میتوانید از این طریق دوباره به نوت بوک دسترسی پیدا کنید.
0 commit comments