نصب اپلیکیشن

صفحه رسمی مای درس

اطلاع از آخرین تغییرات، جوایز و مسابقات مای درس
دنبال کردن

خلاصه نکات کار و فناوری هشتم فصل 3 برنامه نویسی - درسنامه شب امتحان کار و فناوری هشتم فصل 3 برنامه نویسی - جزوه شب امتحان کار و فناوری هشتم نوبت اول فصل 3 برنامه نویسی



آرایه ها و انواع آن

آرایه ها

برای ذخیره چندین داده در یک متغیر از ساختاری به نام آرایه collection)) استفاده می شود. در زبان پایتون، چهار نوع آرایه به نامهای لیست، تاپل، سِت و دیکشنری داریم. از میان اینها، هر چند عملکرد آرایه های لیست و تاپل شباهت زیادی به یکدیگر دارند، ولی پس از تعریف لیست، عناصر آنرا میتوان تغییر داد. اما در مورد تاپل این کار امکانپذیر دیگر، یعنی سِ ت و دیکشنری نیز به هم شبیه اند. با این تفاوت که در دیکشنری، هر کدام از عناصر (آیتم ها( نیست. دو آرایه از ترکیب کلید: مقدار (key:value) ایجاد میشوند. اما در آرایه سِت، عناصر فقط دارای مقدار value)) هستند.

 

انواع آرایه

  • لیست (list)
  • مجموعه ((set
  • تاپل (tuple)
  • دیکشنری (dictionary)


مای درس ، برترین اپلیکیشن کمک درسی ایران

پوشش تمام محتواهای درسی پایه هشتم
  • آزمون آنلاین تمامی دروس پایه هشتم
  • گام به گام تمامی دروس پایه هشتم
  • ویدئو های آموزشی تمامی دروس پایه هشتم
  • گنجینه ای از جزوات و نمونه سوالات تمامی دروس پایه هشتم
  • فلش کارت های آماده دروس پایه هشتم
  • گنجینه ای جامع از انشاء های آماده پایه هشتم
  • آموزش جامع آرایه های ادبی، دستور زبان، قواعد زبان انگلیسی و ... ویژه پایه هشتم

کاملا رایگان

+500 هزار کاربر


همین حالا نصب کن



لیست و ویژگی های آن

لیست

ویژگی ها عناصر لیست:

  • قابل تغییرند.
  • شماره گذاری می شوند
  • داده تکراری می پذیرند.
  • دارای ترتیب اند.

 

دسترسی به عناصر لیست

اگرمبنای شماره گذاری عناصر لیست از چپ به راست باشد، باید از صفر شروع کنیم.

مثال

myList = [10,  20,ʹomidʹ,30,10, True,45]

اگر مبنای شماره گذاری عناصر لیست از راست به چپ باشد. باید از  -1 شروع کنیم.

مثال

 

عملیات روی عناصر لیست

در پایتون، عملیات روی عناصر لیست ها عبارت اند از: اضافه کردن، حذف، مرتب سازی و پیمایش عناصر.

 

اضافه کردن عنصر به لیست

myList= [10,20,45]

برای اضافه کردن یک عنصر به انتهای لیست بالا از متد append استفاده می شود.

مثال

myList.append(50)

print(myList)

خروجی برنامه بالا به شکل زیر است:

[10,20,45,50] 

برای درج عنصر به یک مکان خاصی در لیست از متد insert استفاده می کنیم. به عنوان مثال برای اضافه کردن مقدار 100 در مکان شماره 2 از دستور زیر استفاده می شود:

myList.insert(2,100)

[10,20,100,45,50]

 

مرتب سازی عناصر لیست

با متد sort میتوان عناصر لیست را به طور صعودی یا نزولی مرتب کرد.

thisList=['orange','mango','kiwi','banana']

thisList.sort()

print(thisList)

خروجی قطعه برنامه بالا یک لیست به شکل زیر است که به ترتیب حروف الفبای انگلیسی مرتب شده است:

['banana' ,'kiwi' ,'mango' ,'orange']

همچنین برای مرتب سازی به ترتیب نزولی از روش زیر استفاده میکنیم:

thisList=[ʹʹorangeʹʹ,ʹʹmangoʹʹ,ʹʹkiwiʹʹ,ʹʹbananaʹʹ]

thisList.sort(reverse  =True)

print(thisList)

['orange' ,'mango' ,'kiwi' ,'banana']

 

حذف کردن عنصر از لیست

برای حذف عنصر از لیست، میتوان از متدهای pop و remove وclear  استفاده کرد.

مثال

فرض کنید که یک لیست به شکل زیر داریم.

myList=[10,20,45,ʹʹbookʹʹ,80,45,30]

برای حذف یک عنصر از انتهای لیست، از متد pop به شکل زیر استفاده میشود:

myList.pop()

حال اگر لیست را دوباره توسط دستور print چاپ کنیم، لیست به شکل [10,20,45,”book,80,45]  تبدیل میشود.

همچنین برای حذف عنصر از مکان شماره 1 لیست بالا، میتوان از متدpop  به همراه شماره خانه استفاده کرد.

myList.pop(1)

بنابراین عدد 20 از لیست بالا حذف شد. [10, 45, “book”, 80,45] برای حذف عنصر 45 )اولین عدد 45( از لیست بالا، از دستور زیر استفاده می شود.

myList.remove(45) [10,ʹʹbookʹʹ,80,45]

 

پیمایش عناصر لیست

پیمایش عناصر لیست به معنای حرکت روی عناصر است. فرض کنید که یک لیست به شکل زیر داریم:

myList=[100,213,350,625,140]

for i in myList:

 print(i,end=ʹ ʹ)

در قطعه برنامه بالا توسط یک حلقه for روی عناصر لیست حرکت کرده و آنها را در یک سطر چاپ میکنیم. در واقع اینجا i به معنی عناصر لیست است.

100  213  350  625  140

چگونه میتوان توسط یک ساختار شرطی در داخل حلقه for عناصر زوج را در لیست بالا نمایش داد؟

myList=[100,213,350,625,140]
for i in myList:
    if i%2==0:
        print(i,end=' ')

1 در دستور (print(myList[:3]، ابتدای محدوده مشخص نیست. در این مواقع پایتون آغاز محدوده را از اولین عنصر لیست در نظر میگیرد و دستور به صورت print(myList[0: 3])  تبدیل می شود.

2 همچنین در دســتور (print(myList[2: ] به دلیل آنکه انتهای محدوده مشخص نیست، پایتون از عنصر شماره 2 تا انتهای لیست را چاپ می کند.





تاپل و ویژگی های آن

تاپل

ویژگی ها عناصر تاپل:

  • غیرقابل تغییرند.
  •  شماره گذاری می شوند
  • داده تکراری می پذیرند.
  • دارای ترتیب اند.

مثال

myTuple= (16,ʹkarimʹ,20,16,7.5,12,False)

مثال

حذف عنصر از تاپل

thisTuple= (ʹʹappleʹʹ,ʹʹbananaʹʹ,ʹʹcherryʹʹ)

thisList =list(thisTuple)

thisList.remove(ʹʹappleʹʹ)

thisTuple=tuple(thisList)

print(thisTuple)

در کدهای بالا، ابتدا (در خط دوم) تاپل thisTuple به لیست thisList تبدیل شده، سپس (در خط سوم)، عنصر apple را حذف کردیم، آنگاه دوباره در خط چهارم آن را به تاپل تبدیل کرده و درنهایت در خط پنجم آن را چاپ کردیم.

خروجی برنامه:

(“banana” , “cherry”)

مثال

 تغییر عناصر تاپل:

x   =   (ʹʹappleʹʹ,ʹʹbananaʹʹ,ʹʹcherryʹʹ)

y   = list(x)

y[1]=ʹʹ kiwiʹʹ

x   =   tuple(y)

print(x)

در کدهای بالا، ابتدا (در خط دوم) تاپل x به لیست y تبدیل شده است و سپس (در خط سوم) مقدار عنصر شماره 1 را تغییر دادیم، آنگاه دوباره در خط چهارم آن را به تاپل تبدیل کرده و سرانجام در خط پنجم آن را چاپ کردیم.

خروجی برنامه:

(“apple” ,”kiwi” ,”cherry”)

با توجه به متن عملیات حذف و انتســاب در آرایه تاپل امکان پذیر نیســت. زیرا تاپل ، به طور ذاتی قابل تغییر نیست، ولی میتوان آن را به لیست تغییر داد. پس از آن، تغییرات لازم مثل حذف و انتساب را روی آن انجام داده و دوباره آن را به تاپل تغییر می دهیم.





مقایسه بین لیست و تاپل

مقایسه بین لیست و تاپل

 

متدهای قابل اجرا روی لیست و تاپل

در جدول با انواع متد های قابل اجرا روی لیست ها و چندتایی ها آشنا شده و تفاوت های آنها را با هم مقایسه می کنیم.

 

مثال

برنامه ای بنویسید که 5 عدد از ورودی دریافت کند و به انتهای آرایۀ لیست اضافه و در خروجی، عناصر فرد را چاپ کند.

myList=[]

 for i in range(5):

 myList.append(int(input(f    '  Enter Number {i+1}:')))

 for i in myList:

 if i %2 != 0:

 print (i, end=' ' ) 



مای درس ، برترین اپلیکیشن کمک درسی ایران

پوشش تمام محتواهای درسی پایه هشتم
  • آزمون آنلاین تمامی دروس پایه هشتم
  • گام به گام تمامی دروس پایه هشتم
  • ویدئو های آموزشی تمامی دروس پایه هشتم
  • گنجینه ای از جزوات و نمونه سوالات تمامی دروس پایه هشتم
  • فلش کارت های آماده دروس پایه هشتم
  • گنجینه ای جامع از انشاء های آماده پایه هشتم
  • آموزش جامع آرایه های ادبی، دستور زبان، قواعد زبان انگلیسی و ... ویژه پایه هشتم

کاملا رایگان

+500 هزار کاربر


همین حالا نصب کن



مجموعه و ویژگی های آن

مجموعه

ویژگی های عناصر مجموعه

  • دارای ترتیب نیستند.
  • غیرقابل تغییرند.
  • داده تکراری نمیپذیرند.
  • در صورت تکراری بودن عناصر، فقط یک مورد را ذخیره می کنند.

مثال

mySet= {10,15,ʹaliʹ,11,63,14}

مثال

نحوۀ تعریف دیکشنری

به قطعه برنامه زیر دقت کنید:

thisdict  ={

“brand”: “"دنا,

“model”: “Turbo”,

“year”: 1401

}

print(thisdict)

در برنامه بالا، ابتدا یک دیکشنری با سه آیتم تعریف کردیم. هر آیتم دارای یک کلید:مقدار است. سپس توسط دستور print(thisdict) تمام آیتم ها را چاپ می کنیم و خروجی به شکل زیر است:

{'brand':'دنا','model': ʹʹTurboʹʹ, 'year': 1401}





دیکشنری و ویژگی های آن

دیکشنری

ویژگی های عناصر دیکشنری

  • دارای ترتیب هستند (از پایتون نسخه 3/7 به بعد(.
  • عناصر قابل تغییرند.
  • داده تکراری میپذیرند.
  • به صورت ترکیبی از key:value هستند. اگر کلید تکراری داشته باشیم، آخرین مورد را می پذیرد.

 

مثال

نحوۀ تعریف سِت:

اگر مجموعه ای از اسامی دانش آموزان را داشته باشیم، هر بار که آن را توسط دستور print چاپ می کنیم، خروجی ها از لحاظ ترتیب متفاوت خواهد بود. علت این است که آرایه ست فاقد ترتیب است:

mySet={'amin', 'parnian','arian','Ehsan'}

print(mySet)

با اجرای برنامه بالا، خروجی به صورت زیر است:

{'amin', 'parnian','arian','Ehsan'}

برنامه بالا را چندین بار اجرا کنید و خروجیها را با هم مقایسه کنید. خواهید دید که هر بار خروجی متفاوت می شود.





مفهوم تابع و ماژول

مفهوم تابع

به قطعه برنامه ای که یک بار نوشته شده و نامی دلخواه برای آن انتخاب می شود، تابع می گویند. تابع را میتوان هر چند بار که لازم باشد فراخوانی کرد. این کار باعث کمتر شدن تعداد خطوط برنامه و راحت تر شدن کار برنامه نویسی می شود.

خروجی متدها توسط دستور return برگشت داده میشود.

مثال

برنامه ای بنویسید که تابعی با سه ورودی ایجاد کند و حاصل جمع آنها را با دستور return برگرداند.

توضیح: در قطعه برنامه بالا با استفاده از دستور def یک تابع در خط 1 به نام myFunction ایجاد نمودیم و ورودیهای تابع را با x و y و z مشخص کردیم و توسط دستور return در خط 2 حاصل جمع آنها را محاسبه کردیم و مقدار آن را برگرداندیم. سپس در خطوط 4 و 5 و 6 سه مقدارp , n , m  را از ورودی دریافت و آنگاه در خط 7 تابع را فراخوانی کردیم. توجه کنید که تعداد و ترتیب پارامترها در زمان تعریف تابع با تعداد و ترتیب آرگومان ها در زمان فراخوانی یکسان باشد.

 

آنچه که هنگام کار با تابع لازم است

ورودی تابع:

منظور از ورودی ، مقدار یا مقادیری است که یک تابع دریافت می کند و روی آن عملیاتی مانند ضرب را انجام می دهد. انواع ورودی مانند متغیر، آرایه و ... است.

توابع لامبدا:

توابعی هستند که یک یا چند ورودی دارند ولی همواره یک عملیات در بدنه تابع انجام می شود.

توابع

:built-inتوابعی هستندکه ازقبل در پایتون وجود دارند و برنامه نویس نیازی به تعریف آنها ندارد وفقط کافی است که آن ها را فراخوانی کند، مثل .print

تـوابع بازگشتی:

به توابعی گفته مــی شود کــه در داخل بدنه اش، خود را فراخوانی می کند.

1 برای ورودی یک تابع، میتوان هر مقدار پیش فرضی را تعیین کرد تا اگر در زمان فراخوانی، مقداری برایش تعیین نشد، آن مقدار را اختصاص بدهد.

2 تعداد و ترتیب ورودی های تابع هنگام تعریف، با تعداد آرگومان های آن در حین فراخوانی یکسان است.

 

ماژول

به هر فایل پایتونی با پسوند py. ماژول (module) گفته می شود. داخل ماژول میتوان تابع، لیست، تاپل، ست، دیکشنری و ... ایجاد کرد. ماژول نوشته شده را می توان در ابتدای هر برنامه ای وارد  (import ) و از عناصر داخل آن استفاده کرد. برای این کار از دو روش زیر استفاده میکنیم:

الف) دستور import ...

ب( دستور import ... ... from

در روش الف، هنگام استفاده از عناصر داخل ماژول، لازم است نام ماژول قبل از آن نوشته شود.

در روش ب، هنگام استفاده از عناصر داخل ماژول نیازی به نوشتن نام ماژول قبل از آن نیست.



مای درس ، برترین اپلیکیشن کمک درسی ایران

پوشش تمام محتواهای درسی پایه هشتم
  • آزمون آنلاین تمامی دروس پایه هشتم
  • گام به گام تمامی دروس پایه هشتم
  • ویدئو های آموزشی تمامی دروس پایه هشتم
  • گنجینه ای از جزوات و نمونه سوالات تمامی دروس پایه هشتم
  • فلش کارت های آماده دروس پایه هشتم
  • گنجینه ای جامع از انشاء های آماده پایه هشتم
  • آموزش جامع آرایه های ادبی، دستور زبان، قواعد زبان انگلیسی و ... ویژه پایه هشتم

کاملا رایگان

+500 هزار کاربر


همین حالا نصب کن



روش وارد کردن ماژول در ابتدای برنامه

وارد کردن ماژول در ابتدای برنامه به دو روش

در ادامه کار کلاسی بالا، دو برنامۀ زیر را نوشته و خروجی آن ها را باهم مقایسه کنید.

خروجی دو برنامه بالا به صورت یکسان است، ولی از دو روش متفاوت استفاده شده است:

20

50

'amir'

10,15, 2,46,90, 28

'karimi'

افزون بر ماژول هایی که برنامه نویس می نویسد، دستهٔ دیگری از ماژول های آماده نیز وجود دارند که از قبل در پایتون تعریف شده اند و میتوان از آنها استفاده کرد، مانند ماژول های  pygame،numpy، turtle و... که برای کار با آرایه ها و اشکال هندسی و ... به کار می روند.





مفهوم list comprehension

مفهوم list comprehension

یک روش ساده در پایتون برای افزودن برخی از عناصر یک لیست براساس یک معیار معین به لیست دیگر وجود دارد. با استفاده از این امکان می توان در خطوط کدنویسی صرفه جویی کرد. این مسئله به طور خاص در حلقه ها بسیار مهم است.

با توجه به شکل های الف و ب، دو قطعه برنامه نوشته شده معادل یکدیگرند. در شکل (الف) از روش معمول برای استخراج عناصر زوج 1list  و اضافه شدن آنها به 2list  استفاده شده است، ولی در شکل (ب) از روش  list comprehension  استفاده شده است. این برنامه ها از 1list ا  اعداد زوج را انتخاب و به 2list  اضافه می کند. در انتها 2list  را چاپ می کند که خروجی برنامه به صورت زیر دیده می شود:

[10,2,56,46]





تابع لامبدا (lambda)

تابع لامبدا  (lambda)

به توابعی که دارای یک یا چند ورودی اند ولی بدنه آنها، همواره شامل یک عبارت است تابع لامبدا گفته می شود. رایجترین استفاده از تابع لامبدا در کدهایی است که نیازمند توابع یک خطی ساده ای هستند.

در شرایطی که در بدنه تابع بیش از یک عبارت باشد، نمیتوان از تابع لامبدا استفاده کرد.

توضیح: توابع لامبدا به خودی خود دارای نام نیستند. پس، از متغیرهای x،y،z وw  که در خطوط 1 و 4 و 7 و10  تعریف شده است، به عنوان نام تابع استفاده شده است.



مای درس ، برترین اپلیکیشن کمک درسی ایران

پوشش تمام محتواهای درسی پایه هشتم
  • آزمون آنلاین تمامی دروس پایه هشتم
  • گام به گام تمامی دروس پایه هشتم
  • ویدئو های آموزشی تمامی دروس پایه هشتم
  • گنجینه ای از جزوات و نمونه سوالات تمامی دروس پایه هشتم
  • فلش کارت های آماده دروس پایه هشتم
  • گنجینه ای جامع از انشاء های آماده پایه هشتم
  • آموزش جامع آرایه های ادبی، دستور زبان، قواعد زبان انگلیسی و ... ویژه پایه هشتم

کاملا رایگان

+500 هزار کاربر


همین حالا نصب کن



مدیریت استثنا

مدیریت استثنا

برخی مواقع در زمان اجرای کدها با وجود اینکه گرامر زبان (syntax)و دستورات را رعایت کرده ایم، با حالتی به نام استثنا  (Exception)مواجه می شویم. برای مثال در هنگام تقسیم دو عدد در صورتی که خارج قسمت صفر باشد، حالت استثنا نامیده می شود.

در چنین مواقعی برنامه نویس باید با استفاده از روش های مدیریت استثنا(Handling Exception) این مسئله را حل نماید.

مثال

برنامه ای بنویسید که دو عدد صحیح از ورودی دریافت نماید و هنگام تقسیم دو عدد، حالت استثنا) تقسیم یک عدد بر صفر (را مدیریت کند.





فایل ها

فایل ها

وقتی برنامهای را در پایتون ذخیره میکنیم، کدهای برنامه در حافظۀ دائمی و مقادیر متغیر ها و آرایه ها و ... در حافظۀ موقت یا RAM ذخیره می شوند. به همین دلیل وقتی برنامه نویس می خواهد مقادیر متغیرها و آرایه ها و ... را روی حافظه دائمی، مانند هارد دیسک ذخیره کند باید روی هارد رایانه، فایلی ایجاد کرده و داده های موقت را داخل آن ذخیره کند.

 

انواع فایل

فایلهای متنی و فایلهای دودویی (باینری)

محتوای فایلهای متنی با پسوند txt.توسط ویرایشگری مثل notepad قابل خواندن است، ولی برای دیدن محتوای فایلهای دودویی، لازم به برنامه نویسی است و در حالت عادی توسط ویرایشگر notepad قابل خواندن نیستند.

در خط 1، فایلی به نامmyFile.txt  را در فولدر amir واقع در درایو D باز کرده ایم و می خواهیم رشته ای را به انتهای آن اضافه کنیم. سپس در خط 2 رشته omid is a student good را به انتهای فایل اضافه و در خط 5 دوباره فایل را بازکرده ایم. برای خواندن (r)، ابتدا فایل را باز و سپس آن را خوانده و چاپ می کنیم.. ʹʹaʹʹمخفف append به معنای اضافه کردن به انتهای فایل است.

در خط 1، فایل متنی myFile.txt که در داخل درایو D ساخته ایم را توسط دستور open برای خواندن  (r) باز می کنیم و آن را در یک متغیر به نام f ذخیره می کنیم. سپس در خط 6 محتویات آن را توسط تابع read خوانده و چاپ می کنیم. ʹʹr ʹʹمخفف read به معنای خواندن است.

گاهی اوقات ممکن اســت که در حین خواندن یا نوشتن در فایل، سیستم عامل ویندوز اجازه این کار را ندهد. در این شرایط، دچار استثنا میشویم که لازم است توسط ساختار try-except  آن را مدیریت کنیم.





پاک کردن فایل

پاک کردن فایل

برای پاک کردن فایل باید ماژول os را در ابتدای برنامه import کنیم. توجه کنید که ماژولos ، جزو ماژول های استاندارد در پایتون است.



مای درس ، برترین اپلیکیشن کمک درسی ایران

پوشش تمام محتواهای درسی پایه هشتم
  • آزمون آنلاین تمامی دروس پایه هشتم
  • گام به گام تمامی دروس پایه هشتم
  • ویدئو های آموزشی تمامی دروس پایه هشتم
  • گنجینه ای از جزوات و نمونه سوالات تمامی دروس پایه هشتم
  • فلش کارت های آماده دروس پایه هشتم
  • گنجینه ای جامع از انشاء های آماده پایه هشتم
  • آموزش جامع آرایه های ادبی، دستور زبان، قواعد زبان انگلیسی و ... ویژه پایه هشتم

کاملا رایگان

+500 هزار کاربر


همین حالا نصب کن




محتوا مورد پسند بوده است ؟

5 - 1 رای