diff --git a/_static/pages/01-python-introduction.jpg b/_static/pages/01-python-introduction.jpg index 72c451e..343f4c4 100644 Binary files a/_static/pages/01-python-introduction.jpg and b/_static/pages/01-python-introduction.jpg differ diff --git a/_static/pages/02-python-setup.jpg b/_static/pages/02-python-setup.jpg index cb665e6..ecd4673 100644 Binary files a/_static/pages/02-python-setup.jpg and b/_static/pages/02-python-setup.jpg differ diff --git a/_static/pages/03-python-project-structure.jpg b/_static/pages/03-python-project-structure.jpg index 14b13a3..2aa01c9 100644 Binary files a/_static/pages/03-python-project-structure.jpg and b/_static/pages/03-python-project-structure.jpg differ diff --git a/_static/pages/04-python-interactive-mode.jpg b/_static/pages/04-python-interactive-mode.jpg index ff5a93a..3af3bec 100644 Binary files a/_static/pages/04-python-interactive-mode.jpg and b/_static/pages/04-python-interactive-mode.jpg differ diff --git a/_static/pages/05-python-object-oriented-programming-concept.jpg b/_static/pages/05-python-object-oriented-programming-concept.jpg index f455f3a..29501d5 100644 Binary files a/_static/pages/05-python-object-oriented-programming-concept.jpg and b/_static/pages/05-python-object-oriented-programming-concept.jpg differ diff --git a/_static/pages/06-python-syntax.jpg b/_static/pages/06-python-syntax.jpg index 417cfe4..8e06ca8 100644 Binary files a/_static/pages/06-python-syntax.jpg and b/_static/pages/06-python-syntax.jpg differ diff --git a/_static/pages/07-python-built-in-data-types-1.jpg b/_static/pages/07-python-built-in-data-types-1.jpg index ceb4e70..588186e 100644 Binary files a/_static/pages/07-python-built-in-data-types-1.jpg and b/_static/pages/07-python-built-in-data-types-1.jpg differ diff --git a/_static/pages/08-python-built-in-data-types-2.jpg b/_static/pages/08-python-built-in-data-types-2.jpg index 5785200..ac02f98 100644 Binary files a/_static/pages/08-python-built-in-data-types-2.jpg and b/_static/pages/08-python-built-in-data-types-2.jpg differ diff --git a/_static/pages/09-python-if-else-for-while.jpg b/_static/pages/09-python-if-else-for-while.jpg index a109a1b..4cb871e 100644 Binary files a/_static/pages/09-python-if-else-for-while.jpg and b/_static/pages/09-python-if-else-for-while.jpg differ diff --git a/_static/pages/10-python-input-output-file.jpg b/_static/pages/10-python-input-output-file.jpg index d0c9d57..207ac76 100644 Binary files a/_static/pages/10-python-input-output-file.jpg and b/_static/pages/10-python-input-output-file.jpg differ diff --git a/_static/pages/11-python-os-path-math.jpg b/_static/pages/11-python-os-path-math.jpg index 37e831a..3875430 100644 Binary files a/_static/pages/11-python-os-path-math.jpg and b/_static/pages/11-python-os-path-math.jpg differ diff --git a/_static/pages/12-python-function.jpg b/_static/pages/12-python-function.jpg index 3d6942b..a1e1cd9 100644 Binary files a/_static/pages/12-python-function.jpg and b/_static/pages/12-python-function.jpg differ diff --git a/_static/pages/13-python-function-decorator-generator-coroutine-lambda.jpg b/_static/pages/13-python-function-decorator-generator-coroutine-lambda.jpg index 6c00feb..17a773e 100644 Binary files a/_static/pages/13-python-function-decorator-generator-coroutine-lambda.jpg and b/_static/pages/13-python-function-decorator-generator-coroutine-lambda.jpg differ diff --git a/_static/pages/14-python-function-recursive-memoization.jpg b/_static/pages/14-python-function-recursive-memoization.jpg index eb841fe..849cba1 100644 Binary files a/_static/pages/14-python-function-recursive-memoization.jpg and b/_static/pages/14-python-function-recursive-memoization.jpg differ diff --git a/_static/pages/15-python-regex-1.jpg b/_static/pages/15-python-regex-1.jpg index f961315..510794f 100644 Binary files a/_static/pages/15-python-regex-1.jpg and b/_static/pages/15-python-regex-1.jpg differ diff --git a/_static/pages/16-python-regex-re.jpg b/_static/pages/16-python-regex-re.jpg index f8c6046..60acec4 100644 Binary files a/_static/pages/16-python-regex-re.jpg and b/_static/pages/16-python-regex-re.jpg differ diff --git a/_static/pages/17-python-object-oriented-programming-class-object.jpg b/_static/pages/17-python-object-oriented-programming-class-object.jpg index 2438be0..1bd566c 100644 Binary files a/_static/pages/17-python-object-oriented-programming-class-object.jpg and b/_static/pages/17-python-object-oriented-programming-class-object.jpg differ diff --git a/_static/pages/18-python-object-oriented-programming-inheritance-mro-mixin.jpg b/_static/pages/18-python-object-oriented-programming-inheritance-mro-mixin.jpg index f561f39..090c9fb 100644 Binary files a/_static/pages/18-python-object-oriented-programming-inheritance-mro-mixin.jpg and b/_static/pages/18-python-object-oriented-programming-inheritance-mro-mixin.jpg differ diff --git a/_static/pages/19-python-object-oriented-programming-abstraction-metaclass.jpg b/_static/pages/19-python-object-oriented-programming-abstraction-metaclass.jpg index ff023c0..dfdd0d8 100644 Binary files a/_static/pages/19-python-object-oriented-programming-abstraction-metaclass.jpg and b/_static/pages/19-python-object-oriented-programming-abstraction-metaclass.jpg differ diff --git a/_static/pages/20-python-object-oriented-programming-polymorphism-encapsulation.jpg b/_static/pages/20-python-object-oriented-programming-polymorphism-encapsulation.jpg index 7c409c3..ff8d6bd 100644 Binary files a/_static/pages/20-python-object-oriented-programming-polymorphism-encapsulation.jpg and b/_static/pages/20-python-object-oriented-programming-polymorphism-encapsulation.jpg differ diff --git a/_static/pages/21-python-object-oriented-programming-property-descriptors.jpg b/_static/pages/21-python-object-oriented-programming-property-descriptors.jpg index 122bb45..f1a5e94 100644 Binary files a/_static/pages/21-python-object-oriented-programming-property-descriptors.jpg and b/_static/pages/21-python-object-oriented-programming-property-descriptors.jpg differ diff --git a/_static/pages/22-python-object-oriented-programming-type-hinting-data-class.jpg b/_static/pages/22-python-object-oriented-programming-type-hinting-data-class.jpg index ed14ec3..9ddfcd4 100644 Binary files a/_static/pages/22-python-object-oriented-programming-type-hinting-data-class.jpg and b/_static/pages/22-python-object-oriented-programming-type-hinting-data-class.jpg differ diff --git a/_static/pages/23-python-exception-error-warning-try.jpg b/_static/pages/23-python-exception-error-warning-try.jpg index 0c8ce07..ac58628 100644 Binary files a/_static/pages/23-python-exception-error-warning-try.jpg and b/_static/pages/23-python-exception-error-warning-try.jpg differ diff --git a/_static/pages/24-python-raise-exception-warning-assertion.jpg b/_static/pages/24-python-raise-exception-warning-assertion.jpg index 99b4763..e0ba06f 100644 Binary files a/_static/pages/24-python-raise-exception-warning-assertion.jpg and b/_static/pages/24-python-raise-exception-warning-assertion.jpg differ diff --git a/_static/pages/25-python-date-time-calendar.jpg b/_static/pages/25-python-date-time-calendar.jpg index 5a4c1b2..35dc266 100644 Binary files a/_static/pages/25-python-date-time-calendar.jpg and b/_static/pages/25-python-date-time-calendar.jpg differ diff --git a/_templates/sphinx_minoo_theme/includes/header.html b/_templates/sphinx_minoo_theme/includes/header.html index 7ebcde3..da109bb 100644 --- a/_templates/sphinx_minoo_theme/includes/header.html +++ b/_templates/sphinx_minoo_theme/includes/header.html @@ -39,7 +39,7 @@ {% if theme_direction == "ltr" %} {% else %} - + {% endif %} {%- block linktags %} diff --git a/_templates/sphinx_minoo_theme/static/minoo-20210407.css b/_templates/sphinx_minoo_theme/static/minoo-20230203.css similarity index 84% rename from _templates/sphinx_minoo_theme/static/minoo-20210407.css rename to _templates/sphinx_minoo_theme/static/minoo-20230203.css index f201653..438d9f6 100644 --- a/_templates/sphinx_minoo_theme/static/minoo-20210407.css +++ b/_templates/sphinx_minoo_theme/static/minoo-20230203.css @@ -230,7 +230,6 @@ div[class^='highlight']{width:100%;display:inline-block} td{font-size:14px} tr.row-even{background-color:#F5F5F5;} - /* custome style */ ul li{text-align:justify} .red{color:#E65100} @@ -243,167 +242,51 @@ body{font-size:1.5rem} .reportmenufield:hover{border-right:5px #f48fb1 solid !important} .exercisesmenufield{background-color:#ef5350 !important} .exercisesmenufield:hover{border-right:5px #ef9a9a solid !important} -h1 a.toc-backref, h2 a.toc-backref{color:#fff !important} - - - -.footer-donate { - color: #fff !important; - background-color: #616161 !important; - padding:32px; - display: block; - width: 100%; - text-align:center; -} - -.footer-donate h3 { - border: none !important; - background: transparent; -color: #fff !important; -} - -.footer-donate p { - margin: 0 !important; - text-align: center !important; - font-size:14px; -} - -.footer-donate a.donate-box { -display: block; - width: 100%; - float: none; - padding: 1.5rem; - background-color: #4CAF50; - color: #fff; - font-weight: 800; - text-align: center; - font-size: 20px; - box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1); - height: auto; -} - -.footer-donate i { - font-size: 35px; -} - -i { - vertical-align: bottom !important; -} - - -.top-fixed .top-banner { - position: fixed; - background: #fff; - z-index: 9; - right: 0; - top: 0; - left: 0; - right: 18%; - - max-width: 772px; -} - -.top-banner { - -transition:all .2s ease; -} - -.top-fixed #body-donate { - margin-bottom:0; -} - -.top-fixed .text-content { -margin-top:100px; -} - -.donate-badge{ - position: fixed; - bottom: 12px; - z-index: 999999; - left: 40px; - display:none; - transition:all .2s ease; -} - -.donate-badge.active { - display:block; -} - -#sidebar-bottom-list ul li { - font-size: 12px; -text-align: inherit; -} - -.toctree-wrapper ul li { -text-align: inherit; -} - -.side-top-link { - color: #fff; - text-align: center; - display: block; - padding: 8px; - position: fixed; - bottom: 38px; - background: #5C6BC0; - width: 300px; - right: -300px; - font-size: 85%; -} +h1 a.toc-backref h2 a.toc-backref{color:#fff !important} +.footer-donate {color:#fff !important;background-color:#616161 !important;padding:32px;display:block;width:100%;text-align:center;} +.footer-donate h3{border:none !important;background:transparent;color:#fff !important;} +.footer-donate p{margin:0 !important;text-align:center !important;font-size:14px;} +.footer-donate a.donate-box{display:block;width:100%;float:none;padding:1.5rem;background-color:#4CAF50;color:#fff;font-weight:800;text-align:center;font-size:20px;box-shadow:0px 8px 15px rgba(0, 0, 0, 0.1);height:auto;} +.footer-donate i{font-size:35px;} +i{vertical-align:bottom !important;} +.top-fixed .top-banner{position:fixed;background:#fff;z-index:9;right:0;top: 0;left:0;right:18%;max-width:772px;} +.top-banner{transition:all .2s ease;} +.top-fixed #body-donate{margin-bottom:0;} +.top-fixed .text-content{margin-top:100px;} +.donate-badge{position:fixed;bottom: 12px;z-index: 999999;left:40px;display:none;transition:all .2s ease;} +.donate-badge.active{display:block;} +#sidebar-bottom-list ul li{font-size:12px;text-align:inherit;} +.toctree-wrapper ul li{text-align:inherit;} +.side-top-link{color:#fff;text-align:center;display:block;padding:8px;position:fixed;bottom:38px;background:#5C6BC0;width:300px;right:-300px;font-size:85%;} #page.toggled .side-top-link{right:0} +.top-links{display:inline-block;float:left;height:32px;width:auto;} +.top-links a{display:block;height:32px;width:auto;padding:2px 10px;cursor:pointer;color:#fff;} +.top-red a{background-color:#b41474;} +.top-green a{background-color:#4CAF50;margin:0px 2px;} +.top-blue a{background-color:#009ca7;} +.top-red a:hover,.top-green a:hover,.top-blue a:hover{color:#000;} +ul li p:last-child{margin-bottom: 24px !important;} +a.side-donate{background-color:#66BB6A;margin:0px 2px;color:white;padding:2px 10px;} +a.hover{background-color:#4CAF50;} +@media screen and (max-width:768px){.top-red{display:none !important;}} +.page-image{max-height:100%;max-width:100%;height:auto;display:inline-block;} - - -.top-links { - display:inline-block;float:left;height:32px;width:auto; -} -.top-links a { - display:block;height:32px;width:auto;padding:2px 10px;cursor:pointer;color:#fff; -} -.top-red a { - background-color:#b41474; -} -.top-green a { - background-color:#4CAF50; - margin:0px 2px; -} -.top-blue a { - background-color:#009ca7; -} -.top-red a:hover, .top-green a:hover, .top-blue a:hover{color:#000;} -@media screen and (max-width: 768px) { - .top-red{display:none !important;} -} - -ul li p:last-child {margin-bottom: 24px !important;} - -a.side-donate{ - background-color: #66BB6A; - margin: 0px 2px; - color: white; - padding: 2px 10px; -} - -a.hover{ - background-color: #4CAF50; -} /* -------- make other colors -------- */ - -.toctree-wrapper li.make-red >a {background-color: #ec407a;} -.toctree-wrapper .make-red >a:hover {border-right: 5px #f48fb1 solid;} -.toctree-wrapper li.make-red.toctree-l1 i {color: #f48fb1!important;} -.toctree-wrapper li.make-red>ul>li>a {background-color: #f48fb1;} -.toctree-wrapper li.make-red>ul>li>a:hover {border-right: 5px #ec407a solid;} - -.toctree-wrapper li.make-green >a {background-color: #00695c;} -.toctree-wrapper .make-green >a:hover {border-right: 5px #4db6ac solid;} -.toctree-wrapper li.make-green.toctree-l1 i {color: #4db6ac!important;} -.toctree-wrapper li.make-green>ul>li>a {background-color: #4db6ac;} -.toctree-wrapper li.make-green>ul>li>a:hover {border-right: 5px #00695c solid;} - -.toctree-wrapper li.make-black >a {background-color: #37474f;} -.toctree-wrapper .make-black >a:hover {border-right: 5px #90a4ae solid;} -.toctree-wrapper li.make-black.toctree-l1 i {color: #90a4ae!important;} -.toctree-wrapper li.make-black>ul>li>a {background-color: #90a4ae;} -.toctree-wrapper li.make-black>ul>li>a:hover {border-right: 5px #37474f solid;} +.toctree-wrapper li.make-red >a{background-color:#ec407a;} +.toctree-wrapper .make-red >a:hover{border-right:5px #f48fb1 solid;} +.toctree-wrapper li.make-red.toctree-l1 i{color:#f48fb1!important;} +.toctree-wrapper li.make-red>ul>li>a{background-color:#f48fb1;} +.toctree-wrapper li.make-red>ul>li>a:hover{border-right:5px #ec407a solid;} + +.toctree-wrapper li.make-green >a{background-color:#00695c;} +.toctree-wrapper .make-green >a:hover{border-right:5px #4db6ac solid;} +.toctree-wrapper li.make-green.toctree-l1 i{color:#4db6ac!important;} +.toctree-wrapper li.make-green>ul>li>a{background-color:#4db6ac;} +.toctree-wrapper li.make-green>ul>li>a:hover{border-right:5px #00695c solid;} + +.toctree-wrapper li.make-black >a{background-color:#37474f;} +.toctree-wrapper .make-black >a:hover{border-right:5px #90a4ae solid;} +.toctree-wrapper li.make-black.toctree-l1 i{color:#90a4ae!important;} +.toctree-wrapper li.make-black>ul>li>a{background-color:#90a4ae;} +.toctree-wrapper li.make-black>ul>li>a:hover{border-right:5px #37474f solid;} diff --git a/lessons/l02.rst b/lessons/l02.rst index 6e7cf4c..e6bcf30 100644 --- a/lessons/l02.rst +++ b/lessons/l02.rst @@ -12,6 +12,7 @@ .. figure:: /_static/pages/02-python-setup.jpg :align: center :alt: نصب و راه‌اندازی پایتون + :class: page-image Photo by `Bermix Studio `__ diff --git a/lessons/l03.rst b/lessons/l03.rst index 2d51160..326836e 100644 --- a/lessons/l03.rst +++ b/lessons/l03.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/03-python-project-structure.jpg :align: center :alt: چگونگی ایجاد و اجرای یک پروژه پایتون + :class: page-image Photo by `Sam Moqadam `__ diff --git a/lessons/l04.rst b/lessons/l04.rst index 16841e6..e4c15ab 100644 --- a/lessons/l04.rst +++ b/lessons/l04.rst @@ -13,6 +13,7 @@ .. figure:: /_static/pages/04-python-interactive-mode.jpg :align: center :alt: برنامه‌نویسی تعاملی با پایتون (interactive) + :class: page-image Photo by `Anton Maksimov juvnsky `__ diff --git a/lessons/l05.rst b/lessons/l05.rst index 9e40657..3b5b6e7 100644 --- a/lessons/l05.rst +++ b/lessons/l05.rst @@ -12,6 +12,7 @@ .. figure:: /_static/pages/05-python-object-oriented-programming-concept.jpg :align: center :alt: مفهوم شی گرایی (Object-Oriented Programming) + :class: page-image Photo by `Lucas Benjamin `__ diff --git a/lessons/l06.rst b/lessons/l06.rst index e0868ab..d49e6ae 100644 --- a/lessons/l06.rst +++ b/lessons/l06.rst @@ -12,6 +12,7 @@ .. figure:: /_static/pages/06-python-syntax.jpg :align: center :alt: سینتکس یا دستور نحو زبان پایتون + :class: page-image Photo by `Tim J `__ diff --git a/lessons/l07.rst b/lessons/l07.rst index ac60f89..70dfc1d 100644 --- a/lessons/l07.rst +++ b/lessons/l07.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/07-python-built-in-data-types-1.jpg :align: center :alt: انواع داده یا شی در پایتون: عددی و رشته + :class: page-image Photo by `Kristian Strand `__ diff --git a/lessons/l08.rst b/lessons/l08.rst index 0639298..60b80f5 100644 --- a/lessons/l08.rst +++ b/lessons/l08.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/08-python-built-in-data-types-2.jpg :align: center :alt: انواع داده یا شی در پایتون: set ،dict ،tuple، list و None + :class: page-image Photo by `Natalia Y `__ diff --git a/lessons/l09.rst b/lessons/l09.rst index 1d2f5c0..56c87be 100644 --- a/lessons/l09.rst +++ b/lessons/l09.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/09-python-if-else-for-while.jpg :align: center :alt: دستورهای کنترلی در پایتون + :class: page-image Photo by `Lynda Sanchez `__ diff --git a/lessons/l10.rst b/lessons/l10.rst index 9a6ea83..8d4797f 100644 --- a/lessons/l10.rst +++ b/lessons/l10.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/10-python-input-output-file.jpg :align: center :alt: فایل، ورودی و خروجی در پایتون - input, print, file + :class: page-image Photo by `Mr Cup / Fabien Barral `__ diff --git a/lessons/l11.rst b/lessons/l11.rst index e0f2fd1..3e04993 100644 --- a/lessons/l11.rst +++ b/lessons/l11.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/11-python-os-path-math.jpg :align: center :alt: کتابخانه استاندارد پایتون: math و os + :class: page-image Photo by `Yousef Espanioly `__ diff --git a/lessons/l12.rst b/lessons/l12.rst index 604c179..7f6f189 100644 --- a/lessons/l12.rst +++ b/lessons/l12.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/12-python-function.jpg :align: center :alt: تابع در پایتون: تعریف، ارسال و تطابق آرگومان‌ها + :class: page-image Photo by `Josue Isai Ramos Figueroa `__ diff --git a/lessons/l13.rst b/lessons/l13.rst index 479e0ab..0a0acd5 100644 --- a/lessons/l13.rst +++ b/lessons/l13.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/13-python-function-decorator-generator-coroutine-lambda.jpg :align: center :alt: تابع در پایتون: Coroutine ،Generator ،Decorator‌ و lambda + :class: page-image Photo by `Bill Oxford `__ diff --git a/lessons/l14.rst b/lessons/l14.rst index 6ae9a3e..7ec4f15 100644 --- a/lessons/l14.rst +++ b/lessons/l14.rst @@ -12,6 +12,7 @@ .. figure:: /_static/pages/14-python-function-recursive-memoization.jpg :align: center :alt: تابع در پایتون: تابع بازگشتی (Recursive) و Memoization + :class: page-image Photo by `Dan Freeman `__ diff --git a/lessons/l15.rst b/lessons/l15.rst index 97a8f4b..cf13702 100644 --- a/lessons/l15.rst +++ b/lessons/l15.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/15-python-regex-1.jpg :align: center :alt: عبارات با قاعده (Regular Expression) یا RegEx در پایتون + :class: page-image Photo by `Ehud Neuhaus `__ diff --git a/lessons/l16.rst b/lessons/l16.rst index d3b453c..0a6ef65 100644 --- a/lessons/l16.rst +++ b/lessons/l16.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/16-python-regex-re.jpg :align: center :alt: کتابخانه استاندارد پایتون: re + :class: page-image Photo by `Markus Winkler `__ diff --git a/lessons/l17.rst b/lessons/l17.rst index 1ebe440..4fde805 100644 --- a/lessons/l17.rst +++ b/lessons/l17.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/17-python-object-oriented-programming-class-object.jpg :align: center :alt: شی گرایی (OOP) در پایتون: تعریف کلاس و ایجاد شی + :class: page-image Photo by `Sarah Kilian `__ diff --git a/lessons/l18.rst b/lessons/l18.rst index 4985227..3558573 100644 --- a/lessons/l18.rst +++ b/lessons/l18.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/18-python-object-oriented-programming-inheritance-mro-mixin.jpg :align: center :alt: شی گرایی (OOP) در پایتون: وراثت (Inheritance)، Association و Mixin + :class: page-image Photo by `Vidar Nordli-Mathisen `__ diff --git a/lessons/l19.rst b/lessons/l19.rst index 60e89dc..db92567 100644 --- a/lessons/l19.rst +++ b/lessons/l19.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/19-python-object-oriented-programming-abstraction-metaclass.jpg :align: center :alt: شی گرایی (OOP) در پایتون: متا کلاس (Metaclass) و انتزاع (Abstraction) + :class: page-image Photo by `Giancarlo Revolledo `__ diff --git a/lessons/l20.rst b/lessons/l20.rst index b394a34..b5ee47b 100644 --- a/lessons/l20.rst +++ b/lessons/l20.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/20-python-object-oriented-programming-polymorphism-encapsulation.jpg :align: center :alt: شی گرایی (OOP) در پایتون: Encapsulation و چندریختی (Polymorphism) + :class: page-image Photo by `sanjiv nayak `__ diff --git a/lessons/l21.rst b/lessons/l21.rst index cf58c71..4c45e5c 100644 --- a/lessons/l21.rst +++ b/lessons/l21.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/21-python-object-oriented-programming-property-descriptors.jpg :align: center :alt: شی گرایی (OOP) در پایتون: __Descriptors ، Context Manager ،Decorator ،__slots و property@ + :class: page-image Photo by `Mathyas Kurmann `__ diff --git a/lessons/l22.rst b/lessons/l22.rst index 672a230..7ddaf51 100644 --- a/lessons/l22.rst +++ b/lessons/l22.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/22-python-object-oriented-programming-type-hinting-data-class.jpg :align: center :alt: شی گرایی (OOP) در پایتون: Type Hinting و دیتا کلاس (Data Class) + :class: page-image Photo by `Stefan Widua `__ diff --git a/lessons/l23.rst b/lessons/l23.rst index e6c51d1..9bcd03c 100644 --- a/lessons/l23.rst +++ b/lessons/l23.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/23-python-exception-error-warning-try.jpg :align: center :alt: مدیریت خطا در پایتون: Exception ،Traceback و Exception Handling و try/except/else/finally + :class: page-image Photo by `krakenimages `__ diff --git a/lessons/l24.rst b/lessons/l24.rst index 6c3a69e..b12d16f 100644 --- a/lessons/l24.rst +++ b/lessons/l24.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/24-python-raise-exception-warning-assertion.jpg :align: center :alt: مدیریت خطا در پایتون:Warning ،raise Exception و Assertion + :class: page-image Photo by `Sandy Manoa `__ diff --git a/lessons/l25.rst b/lessons/l25.rst index bd1afdc..b1d28df 100644 --- a/lessons/l25.rst +++ b/lessons/l25.rst @@ -11,6 +11,7 @@ .. figure:: /_static/pages/25-python-date-time-calendar.jpg :align: center :alt: زمان در پایتون: ماژول‌ datetime و timezone, timedelta, tzinfo + :class: page-image Photo by `Niloofar Kanani `__