Skip to content

Commit f340379

Browse files
author
Saeid
committed
edited l08.1
1 parent fbe8e83 commit f340379

File tree

2 files changed

+41
-20
lines changed

2 files changed

+41
-20
lines changed

source/lessons/l08-list-and-tuple-in-python.rst

Lines changed: 37 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
.. role:: emoji-size
22

33
.. meta::
4-
:description: پایتون به پارسی - کتاب آنلاین و آزاد آموزش زبان برنامه‌نویسی پایتون - درس هشتم: ساختمان داده در پایتون، list و tuple
5-
:keywords: آموزش, آموزش پایتون, آموزش برنامه نویسی, پایتون, انواع شی, انواع داده, ساختمان داده در پایتون, list در پایتون, tuple در پایتون
4+
:description: پایتون به پارسی - کتاب آنلاین و آزاد آموزش زبان برنامه‌نویسی پایتون - درس هشتم: ساختمان‌های داده در پایتون، list و tuple
5+
:keywords: آموزش, آموزش پایتون, آموزش برنامه نویسی, پایتون, انواع شی, انواع داده, ساختمان‌های داده در پایتون, list در پایتون, tuple در پایتون
66

77

88
.. _lesson-08.1:
99

10-
درس ۰۸: ساختمان داده در پایتون: list و tuple
10+
درس ۰۸: ساختمان‌های داده در پایتون: list و tuple
1111
====================================================================================
1212

1313
.. figure:: /_static/pages/08-python-built-in-data-types-2.jpg
1414
:align: center
15-
:alt: درس ۰۸: ساختمان داده در پایتون: tuple و list
15+
:alt: درس ۰۸: ساختمان‌های داده در پایتون: tuple و list
1616
:class: page-image
1717

1818
Photo by `Natalia Y <https://unsplash.com/photos/Oxl_KBNqxGA>`__
@@ -35,11 +35,12 @@
3535

3636
----
3737

38+
.. _python-list:
3839

3940
لیست
4041
------
4142

42-
نوع «**لیست**» (List) انعطاف‌ پذیرترین نوع آماده در پایتون می‌باشد. این نوع همانند رشته یک «**دنباله**» (Sequence) بوده ولی برخلاف آن یک نوع «**تغییر پذیر**» (Mutable) است. شی لیست با استفاده از کروشه ``[ ]`` ایجاد می‌گردد و می‌تواند عضوهایی - **با هر نوع** - داشته باشد که توسط کاما ``,`` از یکدیگر جدا می‌شوند؛ نوع لیست در واقع محلی برای نگهداری اشیا گوناگون است::
43+
نوع «**لیست**» (List) انعطاف‌ پذیرترین نوع آماده در پایتون می‌باشد. این نوع همانند رشته یک «**دنباله**» (Sequence) بوده ولی برخلاف آن یک نوع «**تغییر پذیر**» (Mutable) است. شی لیست با استفاده از کروشه ``[ ]`` ایجاد می‌گردد و ترتیب اعضا را حفظ و می‌تواند عضوهایی - **از هر نوع** - داشته باشد که توسط کاما ``,`` از یکدیگر جدا می‌شوند؛ نوع لیست در واقع محلی برای نگهداری اشیا گوناگون و تغییرپذیر است::
4344

4445
>>> L = [1, 2, 3]
4546
>>> type(L)
@@ -169,8 +170,11 @@
169170
>>> L
170171
[0, 1, 5, 6]
171172

173+
174+
.. _python-del:
172175

173-
.. rubric:: دستور ``del``
176+
دستور ``del``
177+
~~~~~~~~~~~~~~~~~
174178

175179
با استفاده از دستور ``del`` [`اسناد پایتون <http://docs.python.org/3/reference/simple_stmts.html#del>`__] نیز می‌توان یک عضو یا یک تکه از شی لیست را حذف کرد::
176180

@@ -184,7 +188,7 @@
184188
>>> L
185189
['a', 'f', 'g']
186190

187-
همچنین می‌توانیم از این دستور برای حذف کامل یک متغیر استفاده نماییم. با حدف یک متغیر، ارجاع آن به شی نیز حذف می‌شود و چنانچه هیچ ارجاع دیگری به آن شی وجود نداشته باشد، شی‌ای که متغیر به آن ارجاع داشت نیز حذف می‌گردد::
191+
همچنین می‌توانیم از این دستور برای حذف کامل یک متغیر استفاده نماییم. با حدف یک متغیر، ارجاع آن به شی نیز حذف می‌شود و چنانچه هیچ ارجاع دیگری به آن شی وجود نداشته باشد، شی‌ای که متغیر به آن ارجاع داشت نیز از حافظه حذف می‌گردد::
188192

189193
>>> a = 5
190194
>>> a
@@ -267,8 +271,11 @@
267271
>>> d
268272
[4.4]
269273

274+
275+
.. _python-copy:
270276

271-
.. rubric:: کپی کردن
277+
کپی کردن
278+
~~~~~~~~~~~~~~~~
272279

273280
همانند دیگر اشیا می‌توان با انتساب یک متغیر موجود از شی لیست به یک نام جدید، متغیر دیگری از این نوع شی ایجاد کرد. البته همانطور که پیش‌تر نیز بیان شده است؛ در این حالت شی کپی نمی‌گردد و تنها یک ارجاع جدید از این نام جدید به شی آن متغیر داده می‌شود. این موضوع با استفاده از تابع ``()id`` [`اسناد پایتون <http://docs.python.org/3/library/functions.html#id>`__] قابل آزمودن است؛ خروجی این تابع برابر نشانی شی در حافظه می‌باشد و بدیهی است که دو مقدار id یکسان برای دو متغیر نشان از یکی بودن شی آن‌هاست::
274281

@@ -393,7 +400,11 @@
393400
>>> id(L2[2])
394401
140402651379080
395402

396-
.. rubric:: عملگرها برای لیست
403+
404+
.. _python-list-operators:
405+
406+
عملگرها برای لیست
407+
~~~~~~~~~~~~~~~~~~~~~~~~~
397408

398409
می‌توان از عملگرهای ``+`` (برای پیوند لیست‌ها) و ``*`` (برای تکرار عضوهای لیست) بهره برد::
399410

@@ -423,7 +434,11 @@
423434
>>> [1, 2] in L
424435
True
425436

426-
.. rubric:: تفاوت عملگرهای ``==`` و ``is``
437+
438+
.. _python-is-va-equal:
439+
440+
تفاوت عملگرهای ``==`` و ``is``
441+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
427442

428443
نکته‌ای که در درس‌های پیش مطرح نشد، بیان تفاوت بین عملگر برابری و عملگر هویت است. پیش از ارایه توضیح به نمونه کد پایین توجه نمایید::
429444

@@ -473,8 +488,10 @@
473488
>>> L1 is L2 # False!
474489
False
475490

491+
.. _python-convert-to-list:
476492

477-
.. rubric:: تبدیل به شی لیست
493+
تبدیل به شی لیست
494+
~~~~~~~~~~~~~~~~~~~~~~~~~
478495

479496
با استفاده از کلاس ``()list`` [`اسناد پایتون <http://docs.python.org/3/library/functions.html#func-list>`__] می‌توان یک شی لیست ایجاد کرد یا اشیایی که از نوع دنباله هستند را به یک شی لیست تبدیل نمود::
480497

@@ -496,9 +513,10 @@
496513
[]
497514

498515

516+
.. _python-list-methods:
499517

500-
501-
.. rubric:: متدهای کاربردی یک شی لیست
518+
متدهای کاربردی یک شی لیست
519+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
502520

503521
شی لیست تغییر پذیر است و متدهای آن برخلاف شی رشته یک شی جدید تغییر یافته را برنمی‌گردانند بلکه تغییرات را بر روی همان شی ایجاد می‌کنند.
504522

@@ -514,7 +532,7 @@
514532
>>> L
515533
[1, 2, 3, 4, ['a', 'b']]
516534

517-
عملکرد این متد (``(L.append(x``) همانند عمل ``[L + [x`` است::
535+
عملکرد این متد ``(L.append(x`` همانند عمل ``[L + [x`` است::
518536

519537
>>> L = [1, 2, 3]
520538
>>> L + [4]
@@ -538,7 +556,7 @@
538556
[1, 2, 3, 'p', 'y']
539557

540558

541-
* ``(insert(i, x`` - یک عضو جدید (مانند ``x``) را در موقعیتی از لیست با اندیس دلخواه (مانند ``i``) قرار می‌دهد::
559+
* ``(insert(i, x`` - یک عضو جدید مانند ``x`` را در موقعیتی از لیست با اندیس دلخواه مانند ``i`` قرار می‌دهد::
542560

543561
>>> L = [1, 2, 3]
544562

@@ -700,8 +718,11 @@
700718
>>> sorted(L, key=str.lower, reverse=True)
701719
['h', 'G', 'f', 'e', 'D', 'c', 'B', 'a']
702720

721+
722+
.. _python-stack-with-list:
703723

704-
.. rubric:: ایجاد پشته
724+
ایجاد پشته
725+
~~~~~~~~~~~~~~~~~
705726

706727
«پشته» (`Stack <https://en.wikipedia.org/wiki/Stack_%28abstract_data_type%29>`_) ساختاری برای نگهداری موقت داده‌ها می‌باشد به شکلی که آخرین داده‌ای که در آن قرار می‌گیرد نخستین داده‌ای خواهد بود که خارج می‌گردد؛ این شیوه سازمان‌دهی LIFO یا Last In, First Out خوانده می‌شود. پشته تنها از دو عمل (یا متد) پشتیبانی می‌کند: **push** که داده‌ای را بالای تمام داده‌های موجود در آن قرار می‌دهد و **pop** که بالاترین داده را از آن خارج می‌کند.
707728

source/lessons/l08-set-and-dict-in-python.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
.. role:: emoji-size
22

33
.. meta::
4-
:description: پایتون به پارسی - کتاب آنلاین و آزاد آموزش زبان برنامه‌نویسی پایتون - درس هشتم: ساختمان داده در پایتون، set و dict
5-
:keywords: آموزش, آموزش پایتون, آموزش برنامه نویسی, پایتون, انواع شی, انواع داده, ساختمان داده در پایتون, set در پایتون, dict در پایتون
4+
:description: پایتون به پارسی - کتاب آنلاین و آزاد آموزش زبان برنامه‌نویسی پایتون - درس هشتم: ساختمان‌های داده در پایتون، set و dict
5+
:keywords: آموزش, آموزش پایتون, آموزش برنامه نویسی, پایتون, انواع شی, انواع داده, ساختمان‌های داده در پایتون, set در پایتون, dict در پایتون
66

77

8-
درس ۰۸: ساختمان داده در پایتون: set و dict
8+
درس ۰۸: ساختمان‌های داده در پایتون: set و dict
99
====================================================================================
1010

1111
.. figure:: /_static/pages/08-python-built-in-data-types-2.jpg
1212
:align: center
13-
:alt: درس ۰۸: ساختمان داده در پایتون: set و dict
13+
:alt: درس ۰۸: ساختمان‌های داده در پایتون: set و dict
1414
:class: page-image
1515

1616
Photo by `Natalia Y <https://unsplash.com/photos/Oxl_KBNqxGA>`__

0 commit comments

Comments
 (0)