؟ﺖﺴﯿﭼ ﺕﻭﺎﻔﺗ :ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﻪﯿﻧﺎﯿﺑ ﻞﺑﺎﻘﻣ ﺭﺩ ﻥﺎﯿﺑ


.ﺩﻮﺷ ﯽﻣ ﻢﻬﻣ ﻩﺭﺍﺰﮔ ﻞﺑﺎﻘﻣ ﺭﺩ ﺕﺭﺎﺒﻋ ﺰﯾﺎﻤﺗ ﻪﮐ ﺩﺭﺍﺩ ﺩﻮﺟﻭ ﯼﺩﺭﺍﻮﻣ ،ﻩﺪﻨﻨﮐ ﺞﯿﮔ ﯽﻓﺎﮐ ﻩﺯﺍ

؟ﺖﺴﯿﭼ ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﺕﺍﺭﺎﻬﻇﺍ ﻭ ﺕﺍﺭﺎﺒﻋ ﻦﯿﺑ ﺕﻭﺎﻔﺗ ، ﻦﯾﺍﺮﺑﺎﻨﺑ

ﺪﻨﺘﺴﻫ ﯽﺒﻧﺎﺟ ﺽﺭﺍﻮﻋ ﺕﺍﺭﺎﻬﻇﺍ ﻭ ﺮﯾﺩﺎﻘﻣ ﯼﺍﺭﺍﺩ ﺕﺍﺭﺎﺒﻋ :ﻪﺻﻼﺧ ﺭﻮﻃ ﻪﺑ

:ﺖﻓﺎﯾ ﺪﯿﻫﺍﻮﺧ ﺍﺭ ﺮﯾﺯ ﻒﯾﺮﻌﺗ ﻭﺩ ،ﺪﯿﻨﮐ ﯽﻣ ﺯﺎﺑ ﺍﺭ ﻥﻮﺘﯾﺎﭘ ﻪﻣﺎﻧ ﻩﮊﺍﻭ ﯽﺘﻗﻭ

ﺕﺭﺎﺒﻋ: (ﻊﺒﻨﻣ) (…) .ﺩﺮﮐ ﯽﺑﺎﯾﺯﺭﺍ ﯼﺭﺍﺪﻘﻣ ﺎﺗ ﺍﺭ ﻥﺁ ﻥﺍﻮﺗ ﯽﻣ ﻪﮐ ﻮﺤﻧ

(ﻊﺒﻨﻣ) (…) ، ﺖﺳﺍ ﯼﺪﯿﻠﮐ ﻪﻤﻠﮐ ﺎﺑ ﻩﺯﺎﺳ ﻦﯾﺪﻨﭼ ﺯﺍ ﯽﮑﯾ ﺎﯾ ﺕﺭﺎﺒﻋ ﺎﯾ ﻪﯿﻧﺎﯿﺑ .ﺖﺳﺍ (ﺪﮐ "

:ﺪﯿﻨﮐ ﻪﺻﻼﺧ ﺯﺎﯿﺘﻣﺍ ﻪﺳ ﺭﺩ ﺎﻫ ﻪﯿﻧﺎﯿﺑ ﻭ ﺕﺍﺭﺎﺒﻋ ﺩﺭﻮﻣ ﺭﺩ ﺍﺭ ﺎﻫ ﺖﯿﻌﻗﺍﻭ ﻦﯾﺮﺘﻤﻬﻣ ﺪﯿﻧﺍﻮﺗ

  1. .ﺪﻧﺮﯿﮔ ﯽﻣ ﺭﺍﺮﻗ ﺎﻫ ﻪﯿﻧﺎﯿﺑ ﺯﺍ ﯼﺍ ﻩﺩﺮﺘﺴﮔ ﻩﻭﺮﮔ ﺭﺩ ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﺩﻮﺟﻮﻣ ﯼﺎﻫ ﻞﻤﻌﻟﺍﺭﻮﺘﺳﺩ ﻡ
  2. .ﻥﺎﯿﺑ ﻪﯿﻧﺎﯿﺑ ﻡﺎﻧ ﻪﺑ ﺕﺎﻗﻭﺍ ﯽﻀﻌﺑ - ﺪﻨﺘﺴﻫ ﯽﺗﺍﺭﺎﻬﻇﺍ ﺰﯿﻧ ﺕﺍﺭﺎﺒﻋ ﻡﺎﻤﺗ ، ﻒﯾﺮﻌﺗ ﻦﯾﺍ ﺎﺑ
  3. .ﺖﺴﯿﻧ ﻥﺎﯿﺑ ﮏﯾ ﯼﺍ ﻩﺭﺍﺰﮔ ﺮﻫ

ﺪﺷ ﺪﯿﻫﺍﻮﺧ ﻪﺟﻮﺘﻣ ﻥﻮﻨﮐﺍ ؟ﺪﻨﮐ ﯽﻣ ﺹﺎﺧ ﺍﺭ ﻥﺎﯿﺑ ﮏﯾ ﯼﺰﯿﭼ ﻪﭼ .ﺖﺳﺍ ﻪﯿﻧﺎﯿﺑ ﺯﺍ ﯽﺻﺎﺧ ﻉﻮﻧ ﺮ

ﺮﯾﺩﺎﻘﻣ ﺎﺑ ﺕﺍﺭﺎﺒﻋ :ﺕﺍﺭﺎﺒﻋ

.ﺪﻨﺷﺎﺑ ﯽﺗﺍﺭﺎﺒﻋ ﻪﮑﻨﯾﺍ ﺮﮕﻣ ، ﺪﻧﻮﺷ ﻦﯾﺰﮕﯾﺎﺟ ﻝﺩﺎﻌﻣ ﺮﯾﺩﺎﻘﻣ ﺎﺑ ﺪﻨﻧﺍﻮﺗ ﯽﻤﻧ ﺎﻫ ﻪﯿﻧﺎﯿﺑ ،

:ﺪﯾﺮﯿﮕﺑ ﺮﻈﻧ ﺭﺩ ﺍﺭ ﺮﯾﺯ ﺪﮐ ﻪﻌﻄﻗ

>>> x = 42
>>> y = x + 8
>>> print(y)
50

.ﺖﺳﺍ print() ﺩﺮﮑﻠﻤﻋ ﺎﺑ ﺱﺎﻤﺗ ﻡﻮﺳ ﻉﻮﺿﻮﻣ ﻪﮐ ﯽﻟﺎﺣ ﺭﺩ ، ﺖﺳﺍ ﯼﺭﺍﺬﮔﺍﻭ

.ﺖﺳﺍ ﻩﺪﺷ ﻩﺩﺍﺩ ﺹﺎﺼﺘﺧﺍ ﺮﯿﻐﺘﻣ ﻥﺁ ﻪﺑ ﻪﮐ ﺖﺳﺍ ﯼﺭﺍﺪﻘﻣ ﺖﺳﺍﺭ ﺖﻤﺳ ﺖﻤﺴﻗ ﻭ ،y

.ﺪﻨﮐ ﻦﯿﯿﻌﺗ ﺖﺳﺍ ﺍﺮﺟﺍ ﻝﺎﺣ ﺭﺩ ﺎﻤﺷ ﻪﻣﺎﻧﺮﺑ ﻪﮐ ﯽﻧﺎﻣﺯ ﺭﺩ ﺍﺭ ﺮﯿﻐﺘﻣ ﯽﯾﺎﻬﻧ ﺭﺍﺪﻘﻣ ﺎﺗ ﺪﻨﮐ

:ﺪﯿﻨﮐ ﻦﯾﺰﮕﯾﺎﺟ ﻪﻃﻮﺑﺮﻣ ﺭﺍﺪﻘﻣ ﺎﺑ ﺍﺭ ﯽﺗﺭﺎﺒﻋ ﺮﻫ ﺖﺣﺍﺭ ﻝﺎﯿﺧ ﺎﺑ ﺪﯿﻧﺍﻮﺗ ﯽﻣ ،ﻪﺠﯿﺘﻧ ﺭﺩ .ﺩ

>>> x = 42
>>> y = 50
>>> print(y)
50

.ﺪﯾﺍ ﻩﺩﺮﮐ ﺩﺭﺍﻭ ﺩﻮﺧ ﯼﺎﺟ ﺭﺩ ﺍﺭ ﻞﺻﺎﺣ ﺭﺍﺪﻘﻣ ﻭ ﻩﺩﺮﮐ ﻪﺒﺳﺎﺤﻣ ﺖﺳﺩ ﺎﺑ ﺍﺭ ﯽﺑﺎﺴﺣ ﺕﺭﺎﺒﻋ ﺎﻤ

.ﺪﯿﺑﺎﯾﺭﺩ ﻭ ﺪﯿﻧﺰﺑ ﻪﺟﺮﯿﺷ ﻥﻮﺘﯾﺎﭘ ﺕﺍﺭﺎﻬﻇﺍ ﻪﺑ ﻪﮐ ﺖﺳﺍ ﻥﺁ ﺖﻗﻭ ؟ﺖﺴﯿﭼ ﯽﺗﺍﺭﺎﻬﻇﺍ ﻦﯿﻨﭼ ﻦﺘﺷ

ﯽﺒﻧﺎﺟ ﺽﺭﺍﻮﻋ ﺎﺑ ﻞﻤﻌﻟﺍﺭﻮﺘﺳﺩ :ﺎﻫ ﻪﯿﻧﺎﯿﺑ

.ﺪﻫﺩﯽﻣ ﺶﯾﺎﻤﻧ ﻪﺤﻔﺻ ﯼﻭﺭ ﺍﺭ ﻦﺘﻣ ،ﺽﺮﻓﺶﯿﭘ ﺭﻮﻃ ﻪﺑ ﻪﮐ ،ﺪﯿﺴﯾﻮﻧﯽﻣ (stdou

.ﺩﺭﺍﺩ ﺩﻮﺟﻭ ﻂﺳﻭ ﺪﺣ ﮏﯾ ﺎﺠﻨﯾﺍ ﺭﺩ ﻪﮐ ﺖﺳﺍ ﻡﻮﻠﻌﻣ ﺎﻣﺍ .ﺪﯿﻨﮐ ﺩﺎﯾ ﺎﻬﻧﺁ ﺯﺍﺺﻟﺎﺧ

:ﺖﺳﺍ ﻩﺪﺷ ﻪﺘﺧﺎﺳ ﻥﺎﺑﺯ ﻪﺑ ﻪﮐ ﺖﺳﺍ () ﯼﺪﻌﺑ() Python> ﺩﺮﮑﻠﻤﻋ ﺪﻧﺍﻮﺗ ﯽﻣ

>>> fruit = iter(["apple", "banana", "orange"])
>>> next(fruit)
'apple'
>>> next(fruit)
'banana'
>>> next(fruit)
'orange'

.ﺪﻧﺍﺩﺮﮔﯽﻣﺮﺑ ﺖﺳﺍ ﻪﻟﺩﺎﻌﻣ ﺭﺍﺪﻘﻣ ﺖﻤﺴﻗ ﻪﮐ ﺍﺭ ﻪﻃﻮﺑﺮﻣ ﻩﻮﯿﻣ ﻡﺎﻧ next()

.ﺪﻧﻮﺷﯽﻣ ﻞﺋﺎﻗ ﺰﯾﺎﻤﺗ ،ﺪﻨﻨﮐﯽﻤﻧ ﺍﺭ ﺭﺎﮐ ﻦﯾﺍ ﻪﮐ ﺎﻫﻪﯾﻭﺭ

.ﺖﺳﺍ ﺕﺎﯿﻠﻤﻋ ﻥﻭﺪﺑ ﻒﻔﺨﻣ ﻪﮐ ﺩﻮﺷ ﯽﻣ ﻪﺘﺧﺎﻨﺷ no-op ﻥﺍﻮﻨﻋ ﻪﺑ ﺮﺗﻮﯿﭙﻣﺎﮐ ﻡﻮﻠﻋ ﺭ

.ﺪﻨﮐﯽﻣ ﻞﯾﺪﺒﺗ ﺕﺭﺎﺒﻋ ﮏﯾ ﻪﺑ ﺍﺭ Ellipsis ﻪﮐ ﺖﺳﺍ ﺭﺍﺪﻘﻣ ﮏﯾ ﯼﺍﺭﺍﺩ ،

ﺕﺍﺭﺎﺒﻋ ﻞﺑﺎﻘﻣ ﺭﺩ ﺕﺍﺭﺎﺒﻋ ﻪﺻﻼﺧ

:ﺪﯿﺳﺎﻨﺸﺑ ﺮﺘﻬﺑ ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﺍﺭ ﺎﻫ ﻪﯿﻧﺎﯿﺑ ﻭ ﺕﺍﺭﺎﺒﻋ ﻒﻠﺘﺨﻣ ﻉﺍﻮﻧﺍ ﺎﺗ ﺪﻨﮐ ﯽﻣ ﮏﻤﮐ ﺎﻤﺷ ﻪﺑ

.ﺩﻮﺷ ﯽﻣ ﻩﺩﺎﻔﺘﺳﺍ ، ﺩﻮﺷ ﯽﻣ ﺵﺯﺭﺍ ﻦﺘﺷﺍﺩ ﻥﻭﺪﺑ ﯽﺒﻧﺎﺟ ﺽﺭﺍﻮﻋ ﺚﻋﺎﺑ ﻂﻘﻓ ﻪﮐ ﺺﻟﺎ

.ﺪﻨﮐﯽﻤﻧ ﺩﺎﺠﯾﺍ ﯽﺒﻧﺎﺟ ﺽﺭﺍﻮﻋ ﻭ ﺪﻨﮐﯽﻤﻧ ﺩﺎﺠﯾﺍ ﯽﺷﺯﺭﺍ – ﺪﻫﺩﯽﻤﻧ ﻡﺎﺠﻧﺍ ﺍ

.ﺪﯿﻫﺩ ﺺﯿﺨﺸﺗ ﺖﻌﯿﺒﻃ ﺭﺩ ﺍﺭ ﺎﻬﻧﺁ ﻪﻧﻮﮕﭼ ﻪﮐ ﺖﻓﺮﮔ ﺪﯿﻫﺍﻮﺧ ﺩﺎﯾ ،ﺪﻌﺑ ﻪﻠﺣﺮﻣ ﺭﺩ

؟ﺖﺳﺍ ﺕﺭﺎﺒﻋ ﻞﺑﺎﻘﻣ ﺭﺩ ﯽﺗﺭﺎﺒﻋ ﻥﻮﺘﯾﺎﭘ ﻞﻤﻌﻟﺍﺭﻮﺘﺳﺩ ﮏﯾ ﺎﯾﺁ ﻪﮐ ﺩﺮﮐ ﯽﺳﺭﺮﺑ ﻥﺍﻮﺗ ﯽﻣ ﻪﻧﻮﮕﭼ

.ﻥﻮﺘﯾﺎﭘ ﺯﺍ ﻩﺩﺎﻔﺘﺳﺍ ﺎﺑ ﯽﺴﯾﻮﻧﻪﻣﺎﻧﺮﺑ ﺲﭙﺳ ﻭ ﯽﺘﺳﺩ :ﺩﺍﺩ ﺪﯿﻫﺍﻮﺧ ﺦﺳﺎﭘ ﺭﺎﺑ ﻭﺩ ﻝﺍﻮﺳ

Python Repl ﺭﺩ ﯽﺘﺳﺩ ﯽﺳﺭﺮﺑ

:ﺩﺮﮐ ﺪﯿﻫﺍﻮﺧ ﻩﺪﻫﺎﺸﻣ ﯽﺟﻭﺮﺧ ﺭﺩ ﺍﺭ ﻥﺁ ﺭﺍﺪﻘﻣ ﺯﺍ ﻪﺘﺷﺭ ﺽﺮﻓ ﺶﯿﭘ ﺶﯾﺎ

>>> 42 + 8
50

.ﺖﻓﺮﮔ ﯽﻣ ﻩﺪﯾﺩﺎﻧ ﺩﻭﺭ ﯽﻣ ﻦﯿﺑ ﺯﺍ ﻪﮐ ﺍﺭ ﻩﺪﺷ ﯽﺑﺎﯾﺯﺭﺍ ﺵﺯﺭﺍ ﻢﺟﺮﺘﻣ ، ﺪﺷﺎﺑ ﻪﺘﺷﺍﺩ ﺩﻮﺟﻭ ﻥ

:ﺪﻫﺩ ﯽﻤﻧ ﻥﺎﺸﻧ ﯽﺟﻭﺮﺧ ﺭﺩ ﯼﺰﯿﭼ Repl ﺭﺩ ﺺﻟﺎﺧ ﻪﯿﻧﺎﯿﺑ ﮏﯾ ﯼﺍﺮﺟﺍ ، ﻞﺑﺎﻘﻣ ﺭﺩ

>>> import math
>>>

.ﺪﻨﮐ ﯽﻣ ﺭﺎﺑ ﯽﺒﻧﺎﺟ ﻪﺿﺭﺎﻋ ﮏﯾ ﻥﺍﻮﻨﻋ ﻪﺑ ﺎﻤﺷ ﯽﻠﻌﻓ ﻡﺎﻧ ﯼﺎﻀﻓ ﺭﺩ ﺍﺭ Python ﻩﺪﺷ ﺺﺨﺸﻣ ﻪﺘ

:ﺪﯾﺮﯿﮕﺑ ﺮﻈﻧ ﺭﺩ ﺍﺭ ﻝﺎﺜﻣ ﻦﯾﺍ .ﺪﺷﺎﺑ ﻩﺪﻨﻨﮐ ﻩﺍﺮﻤﮔ ﺪﻧﺍﻮﺗ ﯽﻣ ﻩﺪﺷ ﻪﺒﺳﺎﺤﻣ ﺭﺍﺪﻘﻣ ﮏﯾ ﺯﺍ ﺽ

>>> fruit = {"name": "apple", "color": "red"}
>>> fruit.get("taste")
>>> fruit.get("color")
'red'

. ﺖﺳﺍ "ﺰﻣﺮﻗ" ﻪﮐ ، ﺪﻧﺍﺩﺮﮔ ﯽﻣﺮﺑ ﺍﺭ ﺪﯿﻠﮐ ﻥﺁ ﺎﺑ ﻂﺒﺗﺮﻣ ﺭﺍﺪﻘﻣ ﻭ ، ﺪﯾﺮﯿ

.ﺪﻧﺍﺩﺮﮔﯽﻣﺮﺑ ﺍﺭ ﻪﻃﻮﺑﺮﻣ ﺭﺍﺪﻘﻣ ﺵﻭﺭ ،"color" ﺪﻨﻧﺎﻣ ،ﺩﺭﺍﺩ ﺩﻮﺟﻭ ﻪﮐ

Python repl ﺰﮔﺮﻫ ﭻﯿﻫ ﺎﺑ ﺪﯿﻧﺍﻮﺗ ﯽﻣ ﻪﺸﯿﻤﻫ ، ﮏﺷ ﺕﺭﻮﺻ ﺭﺩ .ﺩﻮﺷ ﯽﻤﮔﺭﺩ

>>> fruit.get("taste")
>>> print(fruit.get("taste"))
None

.ﺩﺭﺍﺩ ﺩﻮﺟﻭ ﺖﺳﺍ ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﯽﺗﺭﺎﺒﻋ ﻞﻤﻌﻟﺍﺭﻮﺘﺳﺩ ﮏﯾ ﺎﯾﺁ ﻪﮑﻨﯾﺍ ﯽﺳﺭﺮﺑ ﯼﺍﺮﺑ ﯼﺮﺗ ﻦﺌﻤﻄﻣ ﺵ

:ﺩﺮﮐ ﺪﯿﻫﺍﻮﺧ ﺖﻓﺎﯾﺭﺩ ﺍﺭ ﺎﻄﺧ ﻦﯾﺍ ﻭ ﺪﯿﻨﮐ ﻩﺩﺎﻔﺘﺳﺍ ﺩﻮﺧ ﺮﯿﻐﺘﻣ ﯼﺍﺮﺑ ﺭﺍﺪﻘﻣ ﮏﯾ ﻥﺍﻮﻨﻋ ﻪﺑ

>>> x = import math
  File "<python-input-0>", line 1
    x = import math
        ^^^^^^
SyntaxError: invalid syntax

.ﺩﺭﺍﺪﻧ ﯽﺳﻮﻤﻠﻣ ﺵﺯﺭﺍ ﺕﺭﺎﺒﻋ ﻥﺁ ﺍﺮﯾﺯ ﺪﯿﻫﺩ ﺹﺎﺼﺘﺧﺍ ﺮﯿﻐﺘﻣ ﮏﯾ ﻪﺑ ﺍﺭ import

:ﺖﺳﺍ ﺕﺭﺎﺒﻋ ﮏﯾ ﻦﯾﺍ ﺎﯾﺁ ﻪﮐ ﺪﯿﻨﮐ ﯽﺳﺭﺮﺑ ﺎﺗ ﺪﯿﻫﺩ ﺹﺎﺼﺘﺧﺍ x ﺮﯿﻐﺘﻣ ﻪﺑ ﺍ

>>> x = y = 42

. y=42 x=42 ، ﺖﺳﺍ ﻪﻧﺎﮔﺍﺪﺟ ﻒﯿﻠﮑﺗ ﻭﺩ ﻡﺎﺠﻧﺍ ﯼﺍ

:ﺕﺍﺭﺎﻬﻇﺍ ﻪﻧ ، ﺪﯾﺪﻨﺒﺑ ﺍﺭ ﺕﺍﺭﺎﺒﻋ ﺪﯿﻧﺍﻮﺗ ﯽﻣ ﻂﻘﻓ ﺎﻤﺷ ﺎﻣﺍ .ﺪﯿﻫﺩ ﺮﯿﯿﻐﺗ ﺍﺭ ﺭﻮﺗﺍﺮﭘﺍ ﺖﯾ

>>> (2 + 2)
4

>>> (x = 42)
  File "<python-input-7>", line 1
    (x = 42)
     ^^^^^^
SyntaxError: invalid syntax. Maybe you meant '==' or ':=' instead of '='?

1 ﻂﺧ ﯽﻣ ﯽﺑﺎﯾﺯﺭﺍ ﺭﺎﻬﭼ ﻪﺑ ﻪﮐ ﺖﺳﺍ ﺕﺭﺎﺒﻋ ﮏﯾ ﯼﻭﺎﺣﻪﮐ ﯽﻟﺎﺣ ﺭﺩ ،

.ﺪﯿﻫﺩ ﻡﺎﺠﻧﺍ ﺭﺎﮐﺩﻮﺧ ﺕﺭﻮﺻ ﻪﺑ ﺪﯿﻫﺍﻮﺧ ﯽﻣ ﻪﮐ ﺪﺷﺎﺑ ﯼﺭﺍﺮﮑﺗ ﺭﺎﮐ ﮏﯾ ﻦﯾﺍ ﺮﮔﺍ ﺪﻨﮐ ﮏﻤﮐ ﺎﻤﺷ

ﻪﯿﻧﺎﯿﺑ ﻞﺑﺎﻘﻣ ﺭﺩ ﻥﻮﺘﯾﺎﭘ ﻥﺎﯿﺑ ﮏﯾ ﺖﺧﺎﺳ

:ﺪﻨﮐ ﺍﺮﺟﺍ ﻪﺘﺷﺭ ﮏﯾ ﺯﺍ ﺍﺭ ﻩﺍﻮﺨﻟﺩ ﺪﮐ ﺪﻧﺍﻮﺗ ﯽﻣ ﻡﻭﺩ ﻊﺑﺎﺗ ﻭ ﺪﯿﻨﮐ ﯽﺑﺎﯾﺯﺭﺍ ﺎﯾﻮﭘ ﺕﺭﻮﺻ ﻪ

>>> eval("2 + 2")
4
>>> exec("x = 42")
>>> print(x)
42

.ﺪﯿﻨﮐ ﺍﺪﯿﭘ ﯽﺳﺮﺘﺳﺩ exec() ﻪﺑ ﻩﺪﺷ ﻝﺎﺳﺭﺍ ﻪﺘﺷﺭ ﺭﺩ ﻩﺪﺷ ﻒﯾﺮﻌﺗ ﺮﯿﻐﺘﻣ ﻪﺑ

:ﺖﺴﯿﻧ ﺮﺒﺘﻌﻣ ﺕﺭﺎﺒﻋ ﺎﯾ ﺕﺭﺎﺒﻋ ﮏﯾ ﯼﺩﻭﺭﻭ ﻪﺘﺷﺭ ﻪﮐ ﯽﻧﺎﻣﺯ ﺪﻨﻨﮐ ﯽﻣ ﺵﺭﺍﺰﮔ ﺍﺭ ﯼﻮﺤﻧ ﯼﺎﻄﺧ ﮏ

>>> eval("2 +")
Traceback (most recent call last):
  ...
SyntaxError: invalid syntax

>>> exec("x = 2 +")
Traceback (most recent call last):
  ...
SyntaxError: invalid syntax

:ﺪﻨﮐ ﯽﻣ ﺭﺎﮐ ﯽﺑﻮﺧ ﻪﺑ exec() ﺎﺑ ﺕﺭﺎﺒﻋ ﻥﺎﻤﻫ ،ﻥﺎﻣﺰﻤﻫ ﺭﻮﻃ ﻪﺑ .ﺪﻨﮐ ﯽﻣ ﺩ

>>> eval("x = 2 + 2")
Traceback (most recent call last):
  ...
SyntaxError: invalid syntax

>>> exec("x = 2 + 2")

:ﺪﻨﮐ ﺖﻓﺎﯾﺭﺩ ﻥﺎﻣﻮﮔﺭﺁ ﻥﺍﻮﻨﻋ ﻪﺑ ﺍﺭ ﺭﻮﺘﺳﺩ ﮏﯾ ﺎﯾ ﺕﺭﺎﺒﻋ ﮏﯾ ﻪﭼ ﺩﻮﺷ ﯽﻣ ﻖﻓﻮﻣ ﻪﺸﯿﻤﻫ ﺎًﺒﯾﺮ

>>> eval("print('Hello, World!')")
Hello, World!

>>> exec("print('Hello, World!')")
Hello, World!

.ﺖﺳﺍ ﻩﺪﻣﺁ ﻉﻮﺿﻮﻣ ﻦﯾﺍ ﻪﺑ ﯽﮔﺪﯿﺳﺭ ﻩﻮﺤﻧ ﺎﺠﻨﯾﺍ ﺭﺩ .ﺪﻧﻮﺷ ﯼﺪﻨﺑ ﻪﻘﺒﻃ ﺕﺭﻮﺻ ﻦﯾﺍ ﻪﺑ ﺪﯾﺎﺑ ﻭ

:ﺐﺳﺎﻨﻣ ﺖﻟﺎﺣ ﺎﺑ .ﺩﻮﺷ ﯽﻣ ﻞﻘﺘﻨﻣ ast.parse() ﻪﺑ ﻪﮐ ﺪﯿﻨﮐ ﺐﯿﮐﺮﺗ ﻊﺑﺎﺗ ﮏﯾ

>>> import ast

>>> def valid(code, mode):
...     try:
...         ast.parse(code, mode=mode)
...         return True
...     except SyntaxError:
...         return False
...

>>> valid("x = 2 + 2", mode="eval")
False

>>> valid("x = 2 + 2", mode="exec")
True

.ﺪﻧﺍﺩﺮﮔ ﯽﻣﺮﺑ ﺍﺭ true ، ﺩﻮﺷ ﯽﻣ ﺍﺮﺟﺍ ﻩﺪﺷ ﺺﺨﺸﻣ ﺖﻟﺎﺣ ﺭﺩ ﺖﯿﻘﻓﻮﻣ ﺎﺑ ﺪ

:ﺪﻫﺩ ﯽﻣ ﻪﺋﺍﺭﺍ ﻩﺪﺷ ﻩﺩﺍﺩ ﺪﮐ ﻪﻌﻄﻗ ﯼﺍﺮﺑ ﯽﻨﺘﻣ ﺶﯾﺎﻤﻧ ﮏﯾ ﻪﮐ ﺪﯿﺴﯾﻮﻨﺑ ﺮﮕﯾﺩ ﯽﮑﻤﮐ ﻊﺑﺎﺗ ﮏﯾ

>>> def describe(code):
...     if valid(code, mode="eval"):
...         return "expression"
...     elif valid(code, mode="exec"):
...         return "statement"
...     else:
...         return "invalid"
...

>>> describe("x = 2 + 2")
'statement'

>>> describe("2 + 2")
'expression'

>>> describe("2 +")
'invalid'

.ﺖﺳﺍ "ﺮﺒﺘﻌﻣﺎﻧ" ﺪﮐ ﻪﮐ ﺪﯾﺮﯿﮔ ﯽﻣ ﻪﺠﯿﺘﻧ ، ﺩﻮﺸﻧ ﻩﺩﺭﻭﺁﺮﺑ ﻁﺮﺷ ﭻﯿﻫ ﺮﮔﺍ

.ﺪﯿﻫﺩ ﺶﯾﺎﻤﻧ ﺍﺭ ﻩﺪﺷ ﯽﺑﺎﯾﺯﺭﺍ ﺕﺭﺎﺒﻋ ﮏﯾ ﯽﻧﺎﻣﺯ ﻪﭼ ﻪﮐ ﺪﯾﺮﯿﮕﺑ ﻢﯿﻤﺼﺗ ﺪﯾﺎﺑ ﻭ ، ﺪﯿﺷﺎﺑ ﺩﻮ

!ﺪﯿﻧﺍﺪﺑ ﺪﯿﻫﺍﻮﺧ ﯽﻣ ﻥﻮﻨﮐﺍ .ﺩﺭﺍﺩ ﺖﯿﻤﻫﺍ ﺎﻤﺷ ﻩﺮﻣﺯﻭﺭ ﯼﺭﺍﺬﮔﺪﮐ ﻞﻤﻋ ﺭﺩ ﻪﮑﻨﯾﺍ ﺎﯾ ﺖﺳﺍ ﻥﺍﺯ

؟ﺩﺭﺍﺩ ﺖﯿﻤﻫﺍ ﺎﻤﺷ ﻪﻧﺍﺯﻭﺭ ﯼﺰﯾﺭ ﻪﻣﺎﻧﺮﺑ ﺭﺩ ﺕﻭﺎﻔﺗ ﻦﯾﺍ ﺎﯾﺁ

:ﺩﺭﺍﺩ ﺩﻮﺟﻭ ﺮﮐﺫ ﻞﺑﺎﻗ ﺎﻨﺜﺘﺳﺍ ﻭﺩ ،ﻝﺎﺣ ﻦﯾﺍ ﺎﺑ .ﺕﺭﺎﺒﻋ ﮏﯾ ﺎﯾ ﺪﯿﻨﮐ ﯽﻣ ﺭﺎﮐ ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﺕ

  1. Lambda ﺕﺍﺭﺎﺒﻋ
  2. ﺎﻋﺩﺍ

.ﺖﺳﺍ lambda ﺕﺭﺎﺒﻋ ﻪﮐ ﺩﺮﮐ ﺪﯿﻫﺍﻮﺧ ﻉﻭﺮﺷ ﺩﺭﻮﻣ ﻦﯿﻟﻭﺍ ﺎﺑ ﺎﻤﺷ

ﺍﺪﺒﻣﻻ ﻥﺎﯿﺑ

:ﺪﺷﺎﺑ ﺪﯿﻔﻣ ﻥﺩﺮﮐ ﺮﺘﻠﯿﻓ ﯼﺍﺮﺑ ﯽﻃﺮﺷ ﺎﯾ ﯼﺯﺎﺳ ﺐﺗﺮﻣ ﺪﯿﻠﮐ ﻦﯿﯿﻌﺗ ﺪﻨﻧﺎﻣ ﺕﺎﺷ ﮏﺗ ﺕﺎﯿﻠﻤﻋ ﯼﺍ

>>> fruits = [("apple", 2), ("banana", 0), ("orange", 3)]

>>> sorted(fruits, key=lambda item: item[1])
[('banana', 0), ('apple', 2), ('orange', 3)]

>>> list(filter(lambda item: item[1] > 0, fruits))
[('apple', 2), ('orange', 3)]

.ﺪﯾﺭﺍﺬﮔ ﯽﻣ ﯽﻗﺎﺑ ، ﺪﻧﺭﺍﺩ ﺪﺣﺍﻭ ﮏﯾ ﻞﻗﺍﺪﺣ ﻪﮐ ﺍﺭ ﯽﯾﺎﻫ ﻩﻮﯿﻣ ﺯﺍ ﻪﺘﺳﺩ ﻥﺁ ﻂﻘﻓ ﻭ ﺪﯿﻨﮐ ﯽﻣ

.ﺖﺴﯿﻧ def ﺎﺑ ﻩﺪﺷ ﻒﯾﺮﻌﺗ ﯽﻟﻮﻤﻌﻣ ﻊﺑﺎﺗ ﮏﯾ ﻝﺩﺎﻌﻣ ﯼﻮﺤﻧ ﺮﻈﻧ ﺯﺍ ﺎﻣﺍ ،ﺪﯿﻫﺩ

.ﺩﺮﮐ ﯽﺑﺎﯾﺯﺭﺍ ﺍﺭ ﻥﺁ ﻥﺍﻮﺗ ﯽﻤﻧ ﻦﯾﺍﺮﺑﺎﻨﺑ ، ﺖﺳﺍ ﺐﮐﺮﻣ ﻪﯿﻧﺎﯿﺑ ﮏﯾ ﻪﺑ ﻖﻠﻌﺘﻣ ﺪﮐ ﮎﻮﻠﺑ ﺮﻫ

:ﺪﯿﻫﺩ ﺹﺎﺼﺘﺧﺍ Lambda ﺕﺭﺎﺒﻋ ﮏﯾ ﺎﺑ ﺎﻤﺷ ﺪﻨﻧﺎﻣ ﯼﺮﯿﻐﺘﻣ ﻪﺑ ﺍﺭ ﺩﺮﮑﻠﻤﻋ ﻒﯾﺮﻌﺗ ﺪﯿﻧﺍﻮﺗ ﯽﻤﻧ

>>> inline = lambda: 42

>>> regular = (
...     def function():
...         return 42
... )
...
  File "<python-input-1>", line 2
    def function():
    ^^^
SyntaxError: invalid syntax

ﺮﯿﻐﺘﻣ ﺖﺳﺍ ﮏﯾ ﻪﺑ ﻩﺪﺷ ﯼﺭﺍﺬﮕﻣﺎﻧ ﺩﺮﮑﻠﻤﻋ ﻒﯾﺮﻌﺗ ﮏﯾ ﺹﺎﺼﺘﺧﺍ ﯼﺍﺮﺑ ﻖﻓﻮﻣﺎﻧ ﺵﻼﺗ ﮏﯾ

:ﺖﺳﺍ ﻩﺪﺷ ﻒﯾﺮﻌﺗ ﺮﮕﯾﺩ ﯼﺎﺟ ﺭﺩ ﻼًﺒﻗ ﻪﮐ ﺪﯿﻫﺩ ﺹﺎﺼﺘﺧﺍ ﻊﺑﺎﺗ ﮏﯾ ﻪﺑ ﺍﺭ

>>> def function():
...     return 42
...
>>> alias = function

.ﺪﯿﻨﮐ ﺭﻮﺒﻋ ﻥﺁ ﺯﺍ ، ﺪﯿﻨﮐ ﯽﻧﺍﻮﺧﺍﺮﻓ ﺍﺭ ﺩﺮﮑﻠﻤﻋ ﺎًﻌﻗﺍﻭ ﻪﮑﻨﯾﺍ ﻥﻭﺪﺑ ﺪﯿﻧﺍﻮﺗ ﯽﻣ ﻪﮐ ﺖﺳﺍ ﺩ

:ﺪﯿﻨﮐ ﯽﻣ ﺩﺎﺠﯾﺍ ﯼﻮﺤﻧ ﯼﺎﻄﺧ ﮏﯾ ،ﺪﯿﻨﮐ ﻩﺩﺎﻔﺘﺳﺍ ﺎﻬﻧﺁ ﺯﺍ ﺪﯿﻨﮐ ﯽﻌﺳ ﺮﮔﺍ .ﺖﺳﺍ ﻉﻮﻨﻤﻣ ﻼًﻣﺎﮐ

>>> lambda: pass
  File "<python-input-0>", line 1
    lambda: pass
            ^^^^
SyntaxError: invalid syntax

:ﺪﻨﻧﺎﻣ ،ﺪﯿﻨﮐ ﯽﻧﺍﻮﺧﺍﺮﻓ ﺍﺪﺒﻣﻻ ﺕﺭﺎﺒﻋ ﺭﺩ ﺍﺭ ﻊﺑﺎﺗ ﻥﺁ ﻭ ﺪﯿﭽﯿﭙﺑ ﻊﺑﺎﺗ ﮏﯾ ﺭﺩ ﺍﺭ ﺕﺭﺎﺒﻋ ﺪ

>>> import tkinter as tk

>>> def on_click(age):
...     if age > 18:
...         print("You're an adult.")
...     else:
...         print("You're a minor.")
...

>>> window = tk.Tk()
>>> button = tk.Button(window, text="Click", command=lambda: on_click(42))
>>> button.pack(padx=10, pady=10)
>>> window.mainloop()

.ﺪﯿﻨﮐ ﻥﺎﯿﺑ ﺍﺪﺒﻣﻻ ﺕﺭﺎﺒﻋ ﮏﯾ ﺎﺑ ﺎﻬﻨﺗ ﺍﺭ ﯼﺍ ﻩﺪﯿﭽﯿﭘ ﻖﻄﻨﻣ ﻦﯿﻨﭼ ﺪﯿﻧﺍﻮﺗ ﯽﻤﻧ ﺎﻤﺷ .ﺪﻨﮐ ﯽ

ﻪﯿﻧﺎﯿﺑ ﯼﺎﻋﺩﺍ

.ﺪﯿﺘﺴﯿﻧ ﺐﻗﺍﺮﻣ ﺎﻤﺷ ﻪﮐ ﯽﻧﺎﻣﺯ ،ﺩﻮﺷ ﻪﺘﺳﺍﻮﺧﺎﻧ ﺭﺎﺘﻓﺭ ﺚﻋﺎﺑ ﺪﻧﺍﻮﺗ ﯽﻣ ﺕﺎﻗﻭﺍ ﯽﻫﺎﮔ ﻦﯾﺍ .ﺖ

:ﺩﻮﺷ ﻝﺎﺒﻧﺩ ﺩﻮﺷ ﯽﻣ ﯽﺑﺎﯾﺯﺭﺍ ﯽﻟﻮﺑ ﺭﺍﺪﻘﻣ ﮏﯾ ﻪﺑ ﻪﮐ ﯽﺗﺭﺎﺒﻋ ﺎﯾ ﯽﻘﻄﻨﻣ ﻩﺭﺍﺰﮔ

>>> assert 18 < int(input("What's your age? "))
What's your age? 42

>>> assert 18 < int(input("What's your age? "))
What's your age? 15
Traceback (most recent call last):
  ...
AssertionError

.ﺪﯿﺷﺎﺑ ﻩﺩﺮﮑﻧ ﻝﺎﻌﻓﺮﯿﻏ ﻂﯿﺤﻣ ﺮﯿﻐﺘﻣ ﺎﯾ ﻥﺎﻣﺮﻓ ﻂﺧ ﻪﻨﯾﺰﮔ ﮏﯾ ﺎﺑ ﯽﻠﮐ ﺭﻮﻃ ﻪﺑ ﺍﺭ ﺎﻫﺎﻋﺩﺍ ﺎ

:ﺪﻨﮐ ﯽﻣ ﯽﺑﺎﯾﺯﺭﺍ ﮏﯾ ﯼﺍﺮﺑ ﻪﮐ ﯽﺗﺭﺎﺒﻋ ﺮﻫ ﺎﯾ - ﺪﯿﻨﮐ ﻞﻣﺎﺷ ﺍﺭ ﻪﺘﺷﺭ ﻪﺘﺷﺭ ﮏﯾ ﻭ ﺪﯿﻫﺩ ﺭﺍﺮ

>>> assert 18 < int(input("What's your age? ")), "You're a minor"
What's your age? 15
Traceback (most recent call last):
  ...
AssertionError: You're a minor

.ﺪﯿﻨﮑﺸﺑ ﺍﺭ ﻂﺧ ﻥﺁ ﯽﻋﻮﻧ ﻪﺑ ﺎﺗ ﺪﻨﮐ ﻪﺳﻮﺳﻭ ﺍﺭ ﺎﻤﺷ ﻭ ﺩﻮﺷ ﻥﺪﻧﺍﻮﺧ ﻞﺑﺎﻗ ﺮﺘﻤﮐ ﺪﮐ ﻪﺑ ﺮﺠﻨﻣ

Python ﻡﺎﻧ ﻪﺑ ﺐﺗﺮﻣ ﯽﮔﮋﯾﻭ ﮏﯾ Implicit Line ﮏﯾ ﺯﺍ ﻩﺩﺎﻔﺘﺳﺍ ﻥﻭﺪﺑ ﺪﻫﺩ ﯽﻣ ﻥﺎﮑﻣﺍ ﺎﻤﺷ

>>> assert (
...     18 < int(input("What's your age? ")),
...     "You're a minor"
... )
<python-input-0>:1: SyntaxWarning: assertion is always true, perhaps remove parentheses?
  assert (
What's your age? 15
>>>

.ﺖﺳﺍ ﻩﺎﺒﺘﺷﺍ ﯼﺰﯿﭼ ﻻًﺎﻤﺘﺣﺍ ﻪﮐ ﺪﻨﻫﺩ ﻉﻼﻃﺍ ﺎﻤﺷ ﻪﺑ ﺎﺗ ﺪﻨﻨﮐ ﯽﻣ ﺭﺩﺎﺻ ﺍﺭ ﺭﺍﺪﺸﻫ ﯽﺘﺣ ﻥﻮﺘﯾﺎ

.ﺩﻮﺷ ﯽﻣ ﺐﯾﻮﺼﺗ ﻪﺸﯿﻤﻫ ، ﺪﯿﻨﮐ ﯽﺳﺭﺮﺑ ﺪﯿﻫﺍﻮﺧ ﯽﻣ ﻪﮐ ﯽﻌﻗﺍﻭ ﻂﯾﺍﺮﺷ ﻦﺘﻓﺮﮔ ﺮﻈﻧ ﺭﺩ ﻥﻭﺪﺑ ﻪﺸ

:ﺪﯿﻨﮐ ﻩﺩﺎﻔﺘﺳﺍ ﺢﯾﺮﺻ ﻂﺧ ﻪﻣﺍﺩﺍ ﺯﺍ ، ﺪﯿﻨﮑﺸﺑ ﺍﺭ ﯽﻧﻻﻮﻃ ﻂﺧ ﮏﯾ ﺪﯿﻫﺍﻮﺧ ﯽﻣ ﯽﺘﻗﻭ ﺖﺳﺍ ﺮﺘﻬﺑ

>>> assert 18 < int(input("What's your age? ")), \
...     "You're a minor"
What's your age? 15
Traceback (most recent call last):
  ...
AssertionError: You're a minor

.ﺩﻮﺷ ﯽﻣ ﯽﺑﺎﯾﺯﺭﺍ ﯽﺘﺳﺭﺩ ﻪﺑ ﻩﺭﺍﺰﮔ ﺍﺮﯾﺯ ﺪﯿﻨﮐ ﯽﻣ ﻩﺪﻫﺎﺸﻣ ﺍﺭ ﺭﺎﻈﺘﻧﺍ ﺩﺭﻮﻣ ﺭﺎﺘﻓﺭ ﻩﺭﺎﺑﻭﺩ

.ﺩﺮﮐ ﺪﯿﻫﺍﻮﺧ ﯽﺳﺭﺮﺑ ﺍﺭ ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﺐﮐﺮﻣ ﻭ ﻩﺩﺎﺳ ﺕﺍﺭﻮﺘﺳﺩ ﻦﯿﺑ ﯼﺎﻫ ﺕﻭﺎﻔﺗ ،ﺪﻌﺑ ﻪﻠﺣﺮﻣ ﺭﺩ

؟ﺖﺴﯿﭼ ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﺐﮐﺮﻣ ﻭ ﻩﺩﺎﺳ ﺕﺍﺭﺎﺒﻋ

:ﺪﯿﻨﮐ ﯼﺪﻨﺑ ﻪﺘﺳﺩ ﯽﻠﺻﺍ ﻉﻮﻧ ﻭﺩ ﻪﺑ ﺍﺭ ﺕﺍﺭﺎﺒﻋ ﺪﯿﻧﺍﻮﺗ ﯽﻣ .ﺪﯿﻫﺩ ﻡﺎﺠﻧﺍ ﺍﺭ ﺎﻫﺮﯿﻐﺘﻣ ﻪﺑ ﺮ

  1. ﻩﺩﺎﺳ ﺕﺍﺭﺎﻬﻇﺍ
  2. ﺐﮐﺮﻣ ﯼﺎﻫ ﻪﯿﻧﺎﯿﺑ

.ﺪﻧﺭﺍﺩ ﺪﯾﺪﺟ ﺖﯿﺼﺨﺷ ﮏﯾ ﻥﺁ ﻝﺎﺒﻧﺩ ﻪﺑ ﻭ ﯼﺩﻭﺭﻭ ﺪﮐ ﺯﺍ ﻂﺧ ﻦﯾﺪﻨﭼ ﻝﻮﻤﻌﻣ ﺭﻮﻃ ﻪﺑ ﻪﮐ ﺪﻨﻫﺩ ﯽ

:ﺪﻫﺩ ﯽﻣ ﻥﺎﺸﻧ ﺍﺭ ﻪﯿﻧﺎﯿﺑ ﻉﻮﻧ ﻭﺩ ﺮﻫ ﺯﺍ ﻝﻭﺍﺪﺘﻣ ﯼﺎﻫ ﻪﻧﻮﻤﻧ ﺯﺍ ﯽﺧﺮﺑ ﺮﯾﺯ ﻝﻭﺪﺟ

assert age > 18

18 < ﻦﺳ ﺮﮔﺍ: ...

import math

ﻪﮐ ﯽﻟﺎﺣ ﺭﺩ True: ...

return 42

(3)ﻩﺩﻭﺪﺤﻣ ﺭﺩ _ ﯼﺍﺮﺑ: ...

pass

ﺪﯿﻨﮐ ﻥﺎﺤﺘﻣﺍ: ...

x = 42 + 8

def add(x, y): ...

.ﺪﻨﺘﺴﻫ ﻊﺑﺎﺗ ﻒﯾﺭﺎﻌﺗ ﻭ ﺎﻫﯽﻃﺮﺷ ،ﺎﻫﻪﻘﻠﺣ ﺪﻨﻧﺎﻣ ﯽﺘﻨﺳ ﻝﺮﺘﻨﮐ ﻥﺎﯾﺮﺟ ﯼﺎﻫﺭﺎﺘﺧﺎﺳ

:ﺪﯾﺮﯿﮕﺑ ﺮﻈﻧ ﺭﺩ ﻝﺎﺜﻣ ﻥﺍﻮﻨﻋ ﻪﺑ ﺍﺭ ﺮﯾﺯ ﯽﻃﺮﺷ ﺕﺭﺎﺒﻋ .ﺖﺳﺍ ﻪﻋﻮﻤﺠﻣ ﮏﯾ

if age > 18:
    print("Welcome!")
elif age < 18:
    raise ValueError("You're too young to be here.")
else:
    import sys
    sys.exit(1)

.ﺪﻨﮐﯽﻣ ﯽﻧﺍﻮﺧﺍﺮﻓ ﺩﻮﺧ ﻪﻋﻮﻤﺠﻣ ﺭﺩ ﻁﻭﺮﺸﻣ ﺕﺭﻮﺻ ﻪﺑ ﺍﺭ print() ﻊﺑﺎﺗ

.ﺪﻨﻨﮐ ﺍﺮﺟﺍ ﯽﻨﺳ ﻂﯾﺍﺮﺷ ﺱﺎﺳﺍ ﺮﺑ ﺍﺭ ﺎﻫ ﺖﯿﺋﻮﺳ ﺯﺍ ﮏﯾ ﻡﺍﺪﮐ ﻪﮐ ﺪﻨﮐ ﯽﻣ ﻦﯿﯿﻌﺗ ﺪﻨﺑ ﻪﺳ ،ﺖﻟ

؟ﻪﻧﻮﮕﭼ ﺪﯿﻧﺍﺩ ﯽﻣ ﺎﯾﺁ .ﺪﯿﻫﺩ ﺭﺎﺸﻓ ﺪﺣﺍﻭ ﻂﺧ ﮏﯾ ﺭﺩ ﺍﺭ ﻩﺩﺎﺳ ﻪﻠﻤﺟ ﻦﯾﺪﻨﭼ ﺪﯿﻧﺍﻮﺗ ﯽﻣ ﺎﻣﺍ

؟ﻢﯿﻫﺩ ﺭﺍﺮﻗ ﻂﺧ ﮏﯾ ﺭﺩ ﺍﺭ ﺕﺭﺎﺒﻋ ﻦﯾﺪﻨﭼ ﻪﻧﻮﮕﭼ

.ﺪﯿﻨﮐ ﻩﺩﺎﻔﺘﺳﺍ ﺭﻮﺘﺳﺩ ﻩﺪﻨﻨﮐﺍﺪﺟ ﻥﺍﻮﻨﻋ ﻪﺑ (;) ﻝﻮﮔﺮﯾﻭ ﻪﻄﻘﻧ ﺯﺍ ﺪﯿﻧﺍﻮﺗ ﯽ

: Python -C ﻪﻨﯾﺰﮔ ﺯﺍ ﻩﺩﺎﻔﺘﺳﺍ ﺎﺑ ﻥﺎﻣﺮﻓ ﻂﺧ ﺭﺩ ﺮﻨﯾﻻ ﮏﯾ ﻪﻣﺎﻧﺮﺑ ﮏﯾ ﯼﺍ

$ python -c 'import sys; print(sys.version)'
3.13.0 (main, Oct 19 2024, 15:05:58) [GCC 13.2.0]

:ﺪﯿﻨﮐ ﺶﺨﭘ ﯽﻠﮑﺸﻣ ﭻﯿﻫ ﻥﻭﺪﺑ ﻂﺧ ﻦﯾﺪﻨﭼ ﺭﺩ ﺍﺭ ﺪﮐ ﺪﻨﻫﺩ ﯽﻣ ﻩﺯﺎﺟﺍ ﺎﻤﺷ ﻪﺑ ﺎﻫ ﻪﻧﺎﯾﺎﭘ ﺮﺜﮐﺍ

$ python -c '
> import sys
> print(sys.version)
> '
3.13.0 (main, Oct 19 2024, 15:05:58) [GCC 13.2.0]

.ﺩﻮﺷ ﻞﯿﮑﺸﺗ ﻂﺧ ﻦﯾﺪﻨﭼ ﺯﺍ ﺪﻧﺍﻮﺗ ﯽﻣ ﺩﺭﺍﺩ ﺭﺎﻈﺘﻧﺍ ﻥﻮﺘﯾﺎﭘ ﻢﺟﺮﺘﻣ ﻪﮐ ﺭﻮﺘﺳﺩ

:ﺪﯾﻮﺷﯽﻣ ﺮﮔﺎﺒﯾﺩ ﺩﺭﺍﻭ ﺮﯾﺯ ﺪﮐ ﯽﺣﻼﻄﺻﺍ ﻂﺧ ﺎﺑ ،ﺩﺮﮐ ﯽﻓﺮﻌﻣ ﺍﺭ breakpoint()<

import pdb; pdb.set_trace()

.ﺪﯾﻮﺷﯽﻣ ﯽﻠﻣﺎﻌﺗ ﯽﯾﺍﺩﺯﻝﺎﮑﺷﺍ ﻪﺴﻠﺟ ﺩﺭﺍﻭ (pdb) ﻥﻮﺘﯾﺎﭘ ﯼﺍﺩﺯﻝﺎﮑﺷﺍ ﺯﺍ ﻩ

.ﺖﻓﺮﮔ ﺪﯿﻫﺍﻮﺧ ﯼﺮﺘﻬﺑ ﺞﯾﺎﺘﻧ Pyarmor ﺪﻨﻧﺎﻣ ﯽﺟﺭﺎﺧ ﯼﺎﻫﺭﺍﺰﺑﺍ ﺎﺑ ﻦﯾﺍﺮﺑﺎﻨﺑ ، ﺪﯿﻨﮐ ﯼﺭﺍﺩﺩ

.ﺪﻫﺩ ﯽﻣ ﺍﺭ ﯽﺴﯾﻮﻧ ﻪﻣﺎﻧﺮﺑ ﻪﺘﻓﺮﺸﯿﭘ ﯼﺎﻫ ﺶﻟﺎﭼ ﺎﺑ ﻪﻠﺑﺎﻘﻣ ﺱﺎﺳﺍ ﻭ ﻪﯾﺎﭘ ﺎﻤﺷ ﻪﺑ ﻪﮐ ﯼﺩﺭﺍﻮ

؟ﺪﻨﺷﺎﺑ ﻪﺘﺷﺍﺩ ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﻪﻧﺎﮔﻭﺩ ﺖﯿﻫﺎﻣ ﺪﻨﻧﺍﻮﺗ ﯽﻣ ﺕﺍﺭﺎﻬﻇﺍ ﺎﯾﺁ

:ﺪﯾﺮﯿﮔ ﯽﻣ ﻩﺪﯾﺩﺎﻧ ﺍﺭ ﻥﺁ ﺖﺸﮔﺯﺎﺑ ﺭﺍﺪﻘﻣ ﺎﻣﺍ ﺪﯿﻨﮐ ﯽﻣ ﺍﺪﺻ ﺍﺭ ﺵﻭﺭ ﺎﯾ ﺩﺮﮑﻠﻤﻋ ﮏﯾ ﺎﻤﺷ ﻪﮐ

>>> with open("file.txt", mode="w", encoding="utf-8") as file:
...     file.write("Hello, World!")
...
13

.ﺪﻫﺩ ﯽﻣ ﺶﯾﺎﻤﻧ ﺖﯿﻌﻗﻮﻣ ﻦﯾﺍ ﺭﺩ ﺍﺭ ﻩﺪﺷ ﯽﺑﺎﯾﺯﺭﺍ ﺕﺭﺎﺒﻋ ﻦﯾﺮﺧﺁ ﻪﺠﯿﺘﻧ ﺭﺎﮐﺩﻮﺧ ﺭﻮﻃ ﻪﺑ Pyt

!ﺪﯿﺘﺴﻫ ﻥﺩﺮﮐ ﻒﺸﮐ ﻝﺎﺣ ﺭﺩ ﺎﻤﺷ ؟ﺪﯿﻨﮐ ﯽﺑﺎﯾﺯﺭﺍ ﺍﺭ ﺕﺍﺭﺎﻬﻇﺍ ﺪﯿﻧﺍﻮﺗ ﯽﻣ ﺎﯾﺁ ؟ﺭﻮﻄﭼ ﺶﺴﮑﻋﺮﺑ

ﻒﯿﻟﺎﮑﺗ

:ﺪﯿﻨﮐ ﯽﺑﺎﯾﺯﺭﺍ ++ C ﺎﯾ C ﺭﺩ ﺍﺭ ﯼﺭﺍﺬﮔﺍﻭ ﻪﯿﻧﺎﯿﺑ ﮏﯾ ﺪﯿﻧﺍﻮﺗ ﯽﻣ ، ﻝﺎﺜﻣ ﻥﺍﻮﻨﻋ ﻪﺑ .ﺪﻨﻨ

#include <stdio.h>

int main() {
    int x;
    while (x = fgetc(stdin)) {
        if (x == EOF)
            break;
        putchar(x);
    }
    return 0;
}

.ﺪﺑﺎﯾ ﯽﻣ ﻪﻣﺍﺩﺍ ﻪﻘﻠﺣ ، ﺪﺷﺎﺑ ﺮﻔﺻ ﺯﺍ ﺮﯿﻏ ﯼﺩﻭﺭﻭ ﺖﯿﺼﺨﺷ ﺐﯿﺗﺮﺗ ﺩﺍﺪﻌﺗ ﻪﮐ ﯽﻧﺎﻣﺯ ﺎﺗ ، ﺮﮕ

.ﺩﻮﺷ ﻩﺮﻈﺘﻨﻣﺮﯿﻏ ﺭﺎﺘﻓﺭ ﻪﺑ ﺮﺠﻨﻣ ﺪﻧﺍﻮﺗ ﯽﻣ ﻪﮐ ﺖﺳﺍ ﯽﻧﺎﺴﻧﺍ ﯼﺎﻄﺧ ﻪﺠﯿﺘﻧ ﻻًﻮﻤﻌﻣ ﺎﻣﺍ ،ﺪﻨﮐ

:ﺪﻨﮐ ﯽﻓﺮﻌﻣ ﺍﺭ ﯼﺭﺍﺬﮔﺍﻭ ﺕﺍﺭﺎﺒﻋ ﺎﺗ ﺩﺮﮐ ﯽﻓﺮﻌﻣ ﺍﺭ Walrus (

MAX_BYTES = 1024

buffer = bytearray()
with open("audio.wav", mode="rb") as file:
    while chunk := file.read(MAX_BYTES):
        buffer.extend(chunk)

.ﻪﻠﺣﺮﻣ ﮏﯾ ﺭﺩ ﻒﯿﻠﮑﺗ ﺪﯿﻨﮐ ﯽﻣ ﻩﺩﺎﻔﺘﺳﺍ ﯽﺑﺎﯾﺯﺭﺍ ﻭ ﯼﺍﺮﺟﺍ ﯼﺍﺮﺑ ﻒﯿﻟﺎﮑﺗ ﺕﺭﺎﺒﻋ ﺯﺍ ﺎﻤﺷ-ﺩﻮ

:ﺪﯿﺳﺭ ﯽﻣ ﺮﻈﻧ ﻪﺑ ﻞﮑﺷ ﻦﯾﺍ ﻪﺑ ﺕﺭﻮﺻ ﻦﯾﺍ ﺮﯿﻏ ﺭﺩ ﻪﮐ ،ﺪﻨﮐ ﯽﻣ ﻩﺮﯿﺧﺫ ﺎﻤﺷ ﯼﺍﺮﺑ ﺍﺭ ﺪﮐ ﻂﺧ

MAX_BYTES = 1024

buffer = bytearray()
with open("audio.wav", mode="rb") as file:
    while True:
        chunk = file.read(MAX_BYTES)
        if not chunk:
            break
        buffer.extend(chunk)

.break ﺭﻮﺘﺳﺩ ﻭ ﯽﻃﺮﺷ ﺭﻮﺘﺳﺩ ،ﺏﺎﺴﺘﻧﺍ ﺭﻮﺘﺳﺩ :ﺪﯾﺩﺮﮐ ﻪﻓﺎﺿﺍ ﺮﮕﯾﺩ ﺭﻮﺘﺳﺩ ﻪ

:ﺖﺳﺍ ﮓﻨﻫﺎﻤﻫ Zen of Python ﺭﺎﺼﻗ ﺕﺎﻤﻠﮐ ﺯﺍ ﯽﮑﯾ ﺎﺑ ﯽﺑﻮﺧ ﻪﺑ ﻪﮐ ،ﺪﯿﻨﮐ ﻩﺩﺎﻔﺘﺳﺍ walrus

(ﻊﺒﻨﻣ) .ﺖﺳﺍ ﯽﻨﻤﺿ ﺯﺍ ﺮﺘﻬﺑ ﺢﯾﺮﺻ

.ﺩﺮﮐ ﺪﯿﻫﺍﻮﺧ ﯽﺳﺭﺮﺑ ﺍﺭ ﯽﻃﺮﺷ ﺕﺍﺭﺎﺒﻋ ﻭ ﺕﺍﺭﺎﺒﻋ ،ﺪﻌﺑ ﻪﻠﺣﺮﻣ ﺭﺩ .ﺪﻧﺭﺍﺩ ﻥﻮﺘﯾﺎﭘ ﺭﺩ ﺍﺭ ﺩﻮ

ﻁﺮﺷ

. false ﻁﺮﺷ ﯽﺑﺎﯾﺯﺭﺍ ﺕﺭﻮﺻ ﺭﺩ ﻦﯾﺰﮕﯾﺎﺟ ﺭﺍﺪﻘﻣ ﮏﯾ ﻭ ، true

:ﺪﺳﺭ ﯽﻣ ﺮﻈﻧ ﻪﺑ ﺎﺠﻨﯾﺍ ﺭﺩ .ﺖﺳﺍ ﺪﻨﺒﯾﺎﭘ ﯽﻃﺮﺷ ﺕﺭﺎﺒﻋ ﺮﺗ ﻪﻧﺍﺭﺎﮐ ﻪﻈﻓﺎﺤﻣ ﺕﺭﺎﺒﻋ ﻪﺑ ﻥﻮﺘﯾﺎ

>>> def describe(users):
...     if not users:
...         print("No people")
...     else:
...         print(len(users), "people" if len(users) > 1 else "person")
...

>>> describe([])
No people

>>> describe(["Alice"])
1 person

>>> describe(["Alice", "Bob"])
2 people

.ﺩﺭﺍﺩ ﻁﻭﺮﺸﻣ ﺕﺭﺎﺒﻋ ﮏﯾ ﺯﺍ ﻩﺩﺎﻔﺘﺳﺍ ﻪﺑ ﺯﺎﯿﻧ ﻝﻮﻤﻌﻣ ﺭﻮﻃ ﻪﺑ ﻪﮐ ، ﺪﯿﻨﮐ ﯽﺑﺎﯾﺯﺭﺍ ﺍﺭ ﯽﻃﺮﺷ

ﺎﻫ ﮎﺭﺩ

:ﺪﯿﻨﮐ ﻩﺩﺎﻔﺘﺳﺍ ﺢﺿﺍﻭ ﯼﺎﻫ ﻪﻘﻠﺣ ﺯﺍ ﯼﺮﯿﮔﻮﻠﺟ ﯼﺍﺮﺑ ﺎﻬﻧﺁ ﺯﺍ ﺪﯿﻧﺍﻮﺗ ﯽﻣ ﻪﮐ ،ﺪﻟﻮﻣ ﺕﺭﺎﺒﻋ ﺎ

>>> fruits = [("apple", 2), ("banana", 0), ("orange", 3)]
>>> sorted(name.title() for name, quantity in fruits if quantity > 0)
['Apple', 'Orange']

.ﺖﺳﺍ ﺖﺨﺳ ﻥﺁ ﻥﺪﻧﺍﻮﺧ ﻪﮐ ﺪﺷ ﺪﯿﻫﺍﻮﺧ ﻪﺟﺍﻮﻣ ﻢﻫﺮﺑ ﻭ ﻢﻫﺭﺩ ﺪﮐ ﮏﯾ ﺎﺑ ،ﺕﺭﻮﺻ ﻦﯾﺍ ﺮﯿﻏ ﺭﺩ .ﺪ

.ﻪﯿﻧﺎﯿﺑ ﻢﻫ ﻭ ﺪﺷﺎﺑ ﺕﺭﺎﺒﻋ ﮏﯾ ﺪﻧﺍﻮﺗ ﯽﻣ ﻥﺎﻣﺰﻤﻫ ﻪﮐ ﺪﻨﻨﮐ ﯽﻣ ﻩﺩﺎﻔﺘﺳﺍ ﻮﺤﻧ ﺯﺍ ﺍﺮﯾﺯ ﺪﻨﺘﺴ

ﺎﻫﺭﻮﺗﺍﺮﻧﮊ

.ﺪﯿﻨﮐ ﻒﯾﺮﻌﺗ ﺍﺭ Coroutines ﺎﯾ ﺪﯿﻨﮐ ﻝﺮﺘﻨﮐ ﺪﻣﺁﺭﺎﮐ ﺭﻮﻃ ﻪﺑ ﺍﺭ ﯽﮔﺭﺰﺑ ﻩﺩﺍﺩ ﯼﺎﻫ ﻥﺎﯾﺮﺟ

:ﺪﯿﻨﮐ ﺪﯿﻟﻮﺗ ﺭﻮﺗﺍﺮﻧﮊ ﺩﺮﮑﻠﻤﻋ ﮏﯾ ﺯﺍ ﺍﺭ ﯼﺮﯾﺩﺎﻘﻣ ﺪﯿﻫﺍﻮﺧ ﯽﻣ ﯽﺘﻗﻭ ﺪﻨﮐ ﺍﺮﺟﺍ

>>> import random

>>> def generate_noise(size):
...     for _ in range(size):
...         yield 2 * random.random() - 1
...

>>> list(generate_noise(3))
[0.7580438973021972, 0.5273057193944659, -0.3041263216813208]

.ﺪﺑﺎﯾ ﻪﻣﺍﺩﺍ ﺍًﺪﻌﺑ ﻭ ﺩﻮﺷ ﻪﺘﻓﺮﮔ ﺮﺳ ﺯﺍ ﺎﺗ ﺪﻫﺩ ﯽﻣ ﻩﺯﺎﺟﺍ ﻥﺁ ﻪﺑ ﻭ ﺩﺭﻭﺁ ﯽﻣ ﺭﺩ ﻖﯿﻠﻌﺗ ﺖﻟ

:ﺪﻨﺘﺴﻫ ﯼﺩﻭﺭﻭ ﺭﻮﺗﺍﺮﻧﮊ ﻪﺑ ﻩﺪﺷ ﻝﺎﺳﺭﺍ ﺮﯾﺩﺎﻘﻣ ﻪﮐ ﯽﻟﺎﺣ ﺭﺩ ، ﺖﺳﺍ ﺭﻮﺗﺍﺮﻧﮊ ﯽﺟﻭﺮﺧ ﻩﺪﻨﻫﺩ

>>> def lowpass_filter():
...     a = yield
...     b = yield a
...     while True:
...         a, b = b, (yield (a + b) / 2)
...

.ﺪﺑﺎﯾ ﯽﻣ ﺹﺎﺼﺘﺧﺍ A ﻡﺎﻧ ﻪﺑ ﯽﻠﺤﻣ ﺮﯿﻐﺘﻣ ﮏﯾ ﻪﺑ ﺲﭙﺳ ﺭﺍﺪﻘﻣ ﻦﯾﺍ .ﺪﻨﮐ ﯽﻣ

.ﺪﻨﮐﯽﻣ ﺭﻮﺒﻋ ﺭﺍﺪﻣ ﮏﯾ ﺯﺍ ﻪﮐ ﯽﮑﯾﺮﺘﮑﻟﺍ ﻥﺎﯾﺮﺟ ﺪﻨﻧﺎﻣ ،ﺪﯿﻫﺩ ﺭﻮﺒﻋ ﺩﻮﺧ ﺮﺘﻠﯿﻓ ﺯﺍ ﺍﺭ

ﺪﻫﺩ ﯽﻣ ﺹﺎﺼﺘﺧﺍ b> ﻪﺑ ﺍﺭ ﺪﯾﺪﺟ ﺭﺍﺪﻘﻣ ﮏﯾ ﺲﭙﺳ ﻭ ، b ﺎﺑ

:ﺪﯿﻨﮐ ﻞﺻﻭ ﺮﮕﯾﺪﮑﯾ ﻪﺑ ، ﺪﻨﮐ ﯽﻣ ﻑﺎﺻ ﺍﺭ ﻝﺎﻨﮕﯿﺳ ﻪﮐ ﺪﻨﮐ ﯽﻣ ﻪﺒﺳﺎﺤﻣ ﺍﺭ ﯼﺍ ﻪﻄﻘﻧ ﻭﺩ ﮎﺮﺤﺘ

>>> lf = lowpass_filter()
>>> lf.send(None)
>>> for value in generate_noise(10):
...     print(f"{value:>5.2f}: {lf.send(value):>5.2f}")
...
 0.66:  0.66
-0.01:  0.32
 0.30:  0.15
-0.10:  0.10
-0.98: -0.54
 0.79: -0.10
 0.31:  0.55
-0.10:  0.11
-0.25: -0.18
 0.57:  0.16

.ﺪﺳﺮﺑ ﻩﺩﺯﺎﺑ ﺕﺭﺎﺒﻋ ﻦﯿﻟﻭﺍ ﻪﺑ ﺎﺗ ﺪﯿﻨﮐ ﺮﭘ ﻥﺁ ﯼﻭﺭ next()

ﻥﺎﯾﺎﭘ

.ﺩﺭﺍﺩ ﺩﻮﺟﻭ ﺎﻬﻧﺁ ﻦﯿﺑ ﯼﺮﺘﺴﮐﺎﺧ ﻪﻘﻄﻨﻣ ﮏﯾ ، ﻝﺎﺣ ﻦﯿﻋ ﺭﺩ .ﺪﻧﻮﺷ ﯽﺒﻧﺎﺟ ﺽﺭﺍﻮﻋ

.ﺪﯿﻨﮐ ﻞﻣﺎﮐ ﻩﺩﺎﻔﺘﺳﺍ ﺪﻣﺁﺭﺎﮐ ﻭ ﯼﻮﻗ ﯼﺎﻫﻪﻣﺎﻧﺮﺑ ﺩﺎﺠﯾﺍ ﯼﺍﺮﺑ ﺕﺍﺭﺎﺒﻋ ﻭ ﺕﺍﺭﺎﺒﻋ ﺯﺍ ﻭ


تمامی حقوق محفوظ است. © Python-3.com • 2024-2025