· 8 years ago · Jun 05, 2018, 12:34 AM
1(1)---------------if, else, and----------------conditions الشروط ÙˆØ§Ù„ØØ§Ù„ات
2=اول ØØ§Ø¬Ø© عشان اÙهمكوا ØØ§Ø¬Ø© كدا ان ال
3معناها تعيين قيمة Ù„ØØ§Ø¬Ø© معينة زي تعيين قيمة لمتغير مثلا
4==اما ال
5Ùمعناها يساوي اللي اØÙ†Ø§ عارÙينها اللي هي زي ناقص وزائد وكدا
6تمام
7اول ØØ§Ø¬Ø© يعني ايه شرط
8الشرط هو نتيجة لو
9يعني هديك امر معين لو عملتو هتظهر النتيجة
10لو لعبت هتتعب
11لو ذاكرت Ù‡ØªÙ†Ø¬Ø ÙˆÙ‡ÙƒØ°Ø§
12وهكذا نبدا Ø´Ø±Ø Ø¨Ù‚ÙŠ
13if نشرØ
14لو عندي مثلا متغيرين بيساووا بعض
15num1 = 15
16num2 = 15
17ifهقول مثلا عشان اشرط ب
18if num1 == num2 :
19 print ("yes")
20>>> yes
21بس كدا Ùهمت دي
22مش Ù…ØØªØ§Ø¬ Ø§Ø´Ø±Ø ØªØ§Ù†ÙŠ بقي انت اقعد جرب مع Ù†ÙØ³Ùƒ
23بقي معناها العكس يعني دي لو لا else
24تعالوا نجرب
25num1 = 15
26num2 = 15
27if num1 == num2 :
28 print ("yes")
29else :
30 print ("no")
31>>> no
32تعالوا نجربها and Ùيه بقي
33num1 = 10
34num2 = 11
35if num1==10 and num2==11 :
36 print ("Yes, they are..!")
37>>> Yes, they are..!
38يساوي 11 num2 يساوي 10 وال num1 يعني لازم الشرطين يتØÙ‚قوا يعني لازم ال
39تمام كدا
40بس كدا خلاص اول درس خلص
41(2)---------------elif, or, not-----------conditions الشروط ÙˆØ§Ù„ØØ§Ù„ات
42elif اول ØØ§Ø¬Ø©
43if بتعمل شرط تاني غير الشرط بتاع
44والشرط بتاعها elif الاول وبعد كدا ØªØØ· دالة if يعني بتكتب الشرط بتاع
45تعالوا نجرب كدا
46num1 = 10
47num2 = 15
48if num1==num2 :
49 print ("yes, num1 = num2")
50elif num1==10 and num2==15 :
51 print ("yes, num1=10 and num2=15")
52else :
53 print ("no one is correct")
54>>> yes, num1=10 and num2=15
55هو اللي هيتØÙ‚Ù‚ elif متØÙ‚قش شرط if يعني لو شرط if بتعمل ايه بتشرط شرط غير شرط elif ها Ø¹Ø±ÙØª ÙˆØ¸ÙŠÙØ©
56بتعمل ايه or تعالوا بقي نعرÙ
57or لازم يكون Ø§ØØ¯ الشرطين يساوي ÙˆØ§ØØ¯ يعني ØµØ Ø¹Ø´Ø§Ù† الناتج من عبور بوابة or لو انت دارس الرياضيات والمنطق هتعر٠ان
58يطلع ÙˆØ§ØØ¯ .. Ùهمت دي كدا يعني انت لازم تكون دارس الرياضيات والمنطق
59تعالوا نجرب كدا عشان تعرÙ
60num1 = 10
61num2 = 15
62if num1==10 or num2==21205454584 :
63 print ("yes")
64>>> yes
65بتبقي عامله ازاي ÙØ§Ù„شرط والنتيجة تمام كدا or ها Ø¹Ø±ÙØª كدا
66not تعالوا بقي نشرØ
67يعني ليس not
68if Ø¨ØªØªØØ· بعد not وكمان
69يعني بتتكتب كدا مثلا
70num1 = 10
71num2 = 15
72if not num1==10 :
73 print ("no")
74>>>
75بتعمل ايه not Ø´ÙˆÙØª مطبعش ØØ§Ø¬Ø© عشان الشرط متØÙ‚قش Ùهمت
76بس كدا خلص الدرس
77(3)-----------while-------------------------Loops ØÙ„قات التكرار
78معناها بالعربي بينما يعني اثناء
79تعالوا نشتغل عملي ونÙكنا مالنظري عشان اØÙ†Ø§ كدا دخلنا عالجد
80num1 = 1
81while num1 <10:
82 print ("Good Morning")
83>>> Good Morning
84تعالوا نترجم الكود
85واديناه قيمة ÙˆØ§ØØ¯ num1 عملنا متغير باسم
86اصغر من عشرة num1 ÙˆÙØ§Ù„سطر اللي بعدو قولتلو بينما قيمة المتغير
87Good Morning اطبعلي كلمة
88بس كدا هنتعلم ÙØ§Ù„دروس الجاية الشروط اللي ØªØªØØ· Ù„Ù„ØØ§Ø¬Ø§Øª دي وهكذا
89(4)--------while----------------------------Loops ØÙ„قات التكرار
90عاوز بقي هنا اديلو شرط جديد مثلا هقولو
91a = 0
92while a==0:
93 print (a)
94
95>>> هيعد يطبع ÙØ§ØµÙار لا نهاية لها مش هيوقÙ
96Ctrl+C عشان توقÙوا هتضغط
97بتعد تكرر النتيجة بتاعت الشرط كتير ÙØ´Ø® ÙˆÙ…Ø¨ØªÙˆÙ‚ÙØ´ يعني كود لا نهائي while عرÙنا كدا ان
98Ø¨ØªÙ†ÙØ° النتيجة مرة ÙˆØ§ØØ¯Ù‡ if انما
99توق٠عن التنÙيذ تمام while Ø§ÙØ±Ø¶ بقي عاوز Ø§ØØ· شرط لو ØØµÙ„ الدالة بتاعت
100هتوق٠عند Ù„ØØ¸Ø© معينة عند ØØ¯ÙˆØ« ØØ§Ø¬Ø© معينة while يعني الدالة
101تعالوا نجرب عملي
102a = 0
103while a<100:
104 a=a+1
105 print (a)
106>>> هيعد يطبع الارقام من 0 لغاية 100 ويوق٠عار٠ليه تعالي Ù†Ø´Ø±Ø Ø§Ù„ÙƒÙˆØ¯ ÙØ§Ù„سطر اللي جاي
107a اول ØØ§Ø¬Ø© ادينا قيمة ØµÙØ± للمتغير
108اصغر من 100 a وقولنا بينما المتغير
109ÙˆØ§ØØ¯ aهتزودلي ع ال
110وتطبعهالي
111Ø¨ØµÙØ± هتزودلي عليها ÙˆØ§ØØ¯ وتطبع Ø§Ù„ÙˆØ§ØØ¯ aيعني ال
112وبعدين تزود Ø¹Ø§Ù„ÙˆØ§ØØ¯ ÙˆØ§ØØ¯ يبقوا 2 وتطبع الاتنين وهكذا لغاية ميوصل لل100
113تمام Ø¹Ø±ÙØª كدا دي
114ممكن نعمل بيها برنامج يولد ايميلات مثلا ونعمل عليها سبام او اي ØØ§Ø¬Ø© بقي
115تعالوا نجرب كدا
116start = "mohamed"
117end = "@gmail.com"
118a = 0
119while a<10000 :
120 a = a + 1
121 print (start+str(a)+end)
122>>> لغاية ميوصل لعشرتلا٠ايميل @gmail.com Ù‡ÙŠÙØ¶Ù„ يطبع كلمة Ù…ØÙ…د ويزود جنبها ارقام وبعدها
123mohamed بقيمة start معني الكود اØÙ†Ø§ ادينالو متغير باسم
124@gmail.com بقيمة endوال
125بقيمة Ø§Ù„ØµÙØ± aوعملنا متغير ال
126اقل من العشر تلا٠aوقولنالو بينما ال
127ÙˆØ§ØØ¯ كل شوية aزودلي ع ال
128endواطبعلي كلمة Ù…ØÙ…د ÙˆØÙˆÙ„ÙŠ الرقم اللي كل شوية يزيد ÙˆØ§ØØ¯ دا Ù„ØØ±Ù عشان ÙŠÙ†ÙØ¹ يتجمع ع النصوص اللي زيه وزودلي عليهم ال
129@gmail.com بتاعت
130بس كدا هيولدلك ميل ليست توصل لعشر الا٠ايميل كلهم كدا
131mohamed1@gmail.com
132mohamed2@gmail.com
133mohamed10000@gmail.com وهكذا لغاية ميوصل ل
134بس كدا باي
135(5)------------for--------------------Loops ØÙ„قات التكرار
136بتتعامل بس مع Ø§Ù„ØØ§ÙˆÙŠØ§Øª يعني ايه Ø§Ù„ØØ§ÙˆÙŠØ§Øª Ø§Ù„ØØ§ÙˆÙŠØ§Øª دي ياعم اللي هي اي ØØ§Ø¬Ø© Ø¨ØªØªØØ· بين علامتين تنصيص تمام كدا بس for
137range اول دالة عندنا هي دالة
138رينج دي يعني بالعامية كدا يعني Ù Ø§Ù„ØØ¯ÙˆØ¯ دي يعني مثلا شاب جاب من بعيد بتقول دا ÙØ§Ù„عشرين التلاتة وعشرين ÙØ§Ù„رينج دا
139طبعا انت Ùهمت الغرض منها دلوقت ÙˆØ¹Ø±ÙØª معناها
140تعالوا نشتغل عملي بقي
141لو قولتلوا مثلا
142range (1,10)
143>>> range (1, 10)
144هو معملش ØØ§Ø¬Ø© بس دا عشان نعر٠بس انما بقي لو عوزنا نطبع الارقام اللي بينهم هنقولو ايه هنقولو كدا
145list (range(1,10))
146>>> [1, 2, 3, 4, 5, 6, 7, 8, 9]
147Ù‡ØªÙ„Ø§ØØ¸ انو مطبعش اخر رقم اللي هو عشرة ليه!ØŸ
148عشان زي مقولتلك قبل كدا انو بيطبع اللي بينهم يعني مش هيطبع اخر رقم Ùهمت
149تعالوا كدا Ù†Ùكر نستغلها ÙØ§ÙŠ ØØ§Ø¬Ø©
150s = "hello"
151for a in s:
152 print (a)
153>>> h
154 e
155 l
156 l
157 o
158hello واديته القيمة sيعني انت عملت متغير باسم
159a Ùمتغير جديد كمان اسمو s وقولتلو خزنلي كل Ø§Ù„ØØ±ÙˆÙ اللي موجوده ÙØ§Ù„متغير
160والاتنين Ùيهم Ù†ÙØ³ القيمة a ÙˆÙˆØ§ØØ¯ اسمو s يعني كدا عندي متغيرين ÙˆØ§ØØ¯ اسمو
161ادينا استغليناها استغلال ØµØ ÙƒØ¯Ø§ اهو
162تعالوا نجربها ع ليسته بقي
163a = ["Ahmed", 1, 0144, "Khaled"]
164for b in a:
165 print (b)
166>>> Ahmed
167 1
168 0144
169 Khaled
170بس كدا ÙƒÙØ§ÙŠØ© الدرس دا
171(6)----------------------مراجعة--------------- Loops ØÙ„قات التكرار
172دلوقت بقي عاوزين نطبق اللي خدناه المرات اللي ÙØ§ØªØª ÙØ§Ù„درس دا تمام
173Ùيها معلومات وعاوزين نعر٠الباسوورد بتاع ايميل معين تعالوا نعر٠ازاي مثلا Database عندنا مثلا
174
175email = "ahmed@gmail.com"
176password = 123456
177password_list=[1234,"asdsa","asjd","asdsad","asdsadasd",123456,"asjdksja"]
178for password in password_list :
179 print (password)
180 if password == 123456 :
181 print (password,"password found")
182ودي كانت النتيجة
1831234
184asdsa
185asjd
186asdsad
187asdsadasd
188123456
189(123456, 'password found')
190asjdksja
191
192تعالوا Ù†Ø´Ø±Ø Ø§Ù„ÙƒÙˆØ¯
193الكود بيقول ايه ؟؟ الكود اول سطر عملنا الداتا بيز اللي قولتلك عليها اللي هي الايميل والباسوورد
194password_list وخمنت ليستة باسووردات من عندي ÙˆØØ·ÙŠØ·Ù‡Ø§ Ùليست
195password_listÙˆØØ·Ù„ÙŠ Ùيه اللي موجود ÙØ§Ù„ password وقولنا ÙØ§Ù„سطر اللي بعدو اعملي متغير باسم
196الي هو المتغير الجديد اللي عملناه passwordواطبعلي ال
197123456 ÙˆÙØ§Ù„سطر اللي بعدو قولنا لو الباسوورد يساوي
198123456 اطبعلي الباسوورد اللي هو
199password found واطبعلي جنبو ØØªØ© ØÙ„وة كدا باسم
200يعني من الاخر بتخمن الباسوورد Ø§Ù„ØµØ Ù…Ù† الباسوورد ليست اللي معاك Ùهمت دي
201بس كدا خلص درس النهارده
202(7)---------nested loobs---------Loops ØÙ„قات التكرار
203يعني كذا ØÙ„قة تكرار جوا بعض
204ÙØ§ÙŠØ¯ØªÙ‡Ø§ انك بتعمل ØÙ„قة تكرار جوة ØÙ„قة تكرار تانية تعالوا كدا نعمل مثال مثلا
205
206for i in list(range(1,100)):
207 for x in list(range(1,200)):
208 print (x)
209 print (i)
210>>> هيطبع من 1 ل 199 وبعدها هيطبع من 1ل99 وبعدها يرجع تاني يطبع من 1 ل 199 وبعدها هيرجع تاني يطبع من 1 ل99 الي ما لا نهاية
211(8)------------break,continue,pass------Loops ØÙ„قات التكرار
212وهو بيستخدم ÙØ§Ù„خروج من الØÙ„قة التكرارية break اول ØØ§Ø¬Ø© هي
213تعالوا مثلا نجرب
214
215s="python"
216for i in s:
217 print (i)
218>>> P
219 y
220 t
221 o
222 n
223طبعا زي ماØÙ†Ø§ عارÙين ÙˆÙØ§Ù‡Ù…ين الدالة دي كتير قبل كدا iواطبعلي ال s من متغير i عملنا الØÙ„قة التكراية وعملنا متغير
224وماطبعوش ولا اطبع اللي بعدو هقولو ايه hعاوز مثلا اجي عند ØØ±Ù ال
225s="python"
226for i in s:
227 if i=="h" :
228 break
229 print (i)
230>>> P
231 y
232 t
233تعالوا Ù†Ø´Ø±Ø Ø§Ù„Ø§ÙˆØ¨Ø¬ÙŠÙƒØª الاوبجيكت بيقول ايه ØŸ
234وبعدها بقي ÙØ§Ù„سطر اللي Ù…Ø§ØØ¯Ø´ ÙØ§Ù‡Ù…Ù‡ دا نعمل Ùيه ايه forوقولنا ÙØ§Ù„سطر اللي بعدو اعملي ØÙ„قة تكرارية ب s عملنا متغير باسم
235s اللي هو خدها من المتغير python من كلمة hوصل Ù„ØØ±Ù ال i السطر معناه ان لو المتغير
236nوال oوال h من غير ال iواطبعلي ال break اطلع من الØÙ„قة التكرارية بالدالة
237Ùهمت بقي ام الاوبجيكت دا break عشان اØÙ†Ø§ واخدين
238Ø§ÙØ±Ø¶ بقي مثلا عملت كدا
239a=0
240while a>100:
241 a=a+1
242 print(a)
243>>> هيعد يطبع من 1 ل100
244لو عاوز مثلا اخليه يوق٠عند ال90 اعمل ايه ÙˆÙŠÙ…Ø³Ø Ø§Ù„90 معاهم
245هقولو كدا
246a=0
247while a>100:
248 a=a+1
249 if a==90:
250 break
251 print(a)
252>>> هيطبع من 1 ل89
253بس كدا اظن Ùهمت دي
254تعالوا نعمل اوبجيكت جديد ÙˆÙ†ÙØµÙ„وا مع بعض كدا عشان هو صعب شوية ÙˆÙ…ØØªØ§Ø¬ تركيز
255
256usernum=int(input("Enter your number : "))
257numbers=[1,2,3,4,5,6,7,8,9]
258for number in numbers:
259 if usernum==number :
260 print("The number is correct")
261 break
262else:
263 print("Try again")
264>>> Enter your number : 3
265>>> The number is correct
266
267عشان اØÙ†Ø§ بنتعامل مع ارقام خلي بالك من دي intiger وخليناه usernum ÙØ§ÙˆÙ„ سطر عملنا متغير باسم
268range(1,10) عبارة عن ليست ÙˆØØ·ÙŠÙ†Ø§ Ùيها ارقام من numbers وعملنا متغير باسم
269forوقولنا نعمل ØÙ„قة تكرارية ب
270اللي هي الليست اللي عملتها numbersاللي انا Ù‡ØØ·Ùˆ او المستخدم Ù‡ÙŠØØ·ÙˆØ§ بيساوي رقم من ارقام ال usernumوقولت لو ال
271اللي بعد كدا اكتر من مرة تمام Try again واطلع من الØÙ„قة التكرارية دي ع طول عشان ميعدش يطبع كلمة The number is correct اطبعلي كلمة
272من الØÙ„قة التكرارية بØÙŠØ« ان اØÙ†Ø§ ØØ·ÙŠÙ†Ø§Ù‡Ø§ ÙØ§ÙˆÙ„ السطر وماخدناش ال4 Ù…Ø³Ø§ÙØ§Øª اللي بتتاخد زي ماØÙ†Ø§ عارÙين else وكمان طلعنا دالة
273اكتر من مرة تمام Ùهمت Try again عشان نطلعها من الØÙ„قة التكرارية وميطبعش كلمة
274بتاع البايثون وتبعبص ÙØ§Ù„اوبجيكت يمين وشمال عشان تÙهم shellلا Ù…Ùهمتش انا عار٠انك Ù…Ùهمتش عشان الكود صعب ØØ§ÙˆÙ„ ØªØØ· الكود عندك كدا ÙØ§Ù„
275وهتعر٠تÙهم الكود انشاء الله
276بتاع البايثون shellكدا بتاع البايثون انت Ù‡ØªÙØªØ ال idleللي Ù…ÙŠØ¹Ø±ÙØ´ انت عشان تكتب كود عادي من غير ميجيلك النتيجة ع طول زي ال
277بتاع البايثون shellوهيشتغل ÙØ§Ù„ py وتØÙظو بصيغة ok وتتك F5 وبعدها تكتب الاوبجيكت اللي انت عاوز تكتبو تمام واول متخلص هتتك CTRL+N وتتك
278بس كدا تمام
279F5 لو عاوز بقي مثلا اتØÙ‚Ù‚ من كذا رقم ورا بعض من غير ماشغل الكود كل شوية ب
280هتعمل ايه
281يعني اربع Ù…Ø³Ø§ÙØ§Øª تمام tab وتدي لكل اللي ØªØØªÙ‡Ø§ while True Ù‡ØªØØ· ÙØ§ÙˆÙ„ الاوبجيكت كلو كلمة
282بص كدا
283
284while True:
285 usernum=int(input("Enter your number : "))
286 numbers=[1,2,3,4,5,6,7,8,9]
287 for number in numbers:
288 if usernum==number :
289 print("The number is correct")
290 break
291 else:
292 print("Try again")
293 >>> Enter your number : 3
294 >>> The number is correct
295 >>> Enter your number :
296وهكذا Ù‡ÙŠÙØ¶Ù„ شغال كدا Ùهمت
297(9)--------continue,pass-------Loops ØÙ„قات التكرار
298الدالة دي بتقوم Ø¨Ø§Ø³ØªØ¦Ù†Ø§Ù Ø§ØØ¯ Ø§Ù„ØØ±ÙˆÙ او الارقام اللي بتطبع نتيجة الØÙ„قة التكرارية اللي اØÙ†Ø§ عاملينها continue عندي اول دالة هي دالة
299تعالي نجرب كدا مثلا
300s = "python"
301for a in s:
302 if a == "h":
303 continue
304 print (s)
305>>> p
306 y
307 t
308 o
309 n
310ولا كاننا شايÙينو اصلا اهو hØ´ÙˆÙØª ادينا عدينا ØØ±Ù ال
311pass تعالي بقي مثلا نستعمل دالة
312s = "python"
313for a in s:
314 if a == "h":
315 pass
316 print (s)
317>>> p
318 y
319 t
320 h
321 o
322 n
323الدالة مالهاش اي ستين لازمة اصلا بس هي معناها تجاوز او عدي يعني كمل من غير اي مشاكل
324بس كدا خلص درس النهارده
325(10)-----------------------------Functions الدوال
326open Ùˆ print Ùيه دوال كتير استخدمناها واØÙ†Ø§ مش واخدين بالنا زي
327والدوال اصلا بتبقي جاية مع اللغة يعني هي جزء اساسي من اللغة
328يعني هي معمولة ÙØ§Ù„لغة اصلا وجايالنا جاهزة
329الدالة عشان تتكتب بتبدا باسمها وبعدها القوسين بتوعها زي دي مثلا
330print ()
331هل بقي اØÙ†Ø§ نعر٠نعمل دالة جديدة ØŸ
332اه نعر٠طبعا نعملها ازاي بقي
333وبعدها اسم الدالة اللي انت عاوز تكتبهولها وبعدها القوسين بتوع الدالة الجديدة بتاعتك def انت عشان تعمل دالة هتكتب امر
334: والنقطتين اللي بعد الدالة اللي هما دول
335مثلا هتعمل ايه ahmed يعني ØªØ¹Ø±ÙŠÙ ÙØ§Ù†Øª عشان تعر٠دالة جديدة باسم defenation اختصار Ù„ def Ùˆ
336def ahmed():
337بعد كدا اول متكتب السطر اللي Ùوقنا دا هياخدلك ÙØ§Ù„سطر اللي بعدو اربع Ù…Ø³Ø§ÙØ§Øª انت هتقولي ليه
338هقولك عشان تكتب ÙˆØ¸ÙŠÙØ© الدالة عاوز الدالة تعمل ايه يعني
339ahmed هقولو مثلا عاوزها تطبع كلمة
340يبقي هنكتب الموضوع كلو كدا
341def ahmed():
342 print("ahmed")
343عاوز بقي استدعي الدالة بتاعتي هعمل ايه؟
344هكتب اسمها والقوسين بتوعها بس مش اكتر وهتتطبع عادي كلمة اØÙ…د
345بس كدا Ùهمت
346يعني الموضوع كلو بيقول
347def ahmed():
348 print("ahmed")
349
350ahmed()
351>>> ahmed
352(11)----------------------Functions الدوال
353لو عاوز بقي مثلا اتØÙƒÙ… ÙØ§Ù„دالة اللي انا عملتها
354يعني مثلا ممكن ازود عليها ØØ§Ø¬Ø© او انقص ØØ§Ø¬Ø© او كدا يعني
355يعني المتغير اللي انا هضيÙهولها parameter هضيÙلها ØØ§Ø¬Ø© اسمها
356تعالوا بقي نشتغل عملي لان النظري مش مهم اوي
357
358 *عملنا الدالة بتاعتنا اهي*
359def ahmed():
360 print("ahmed")
361
362ahmed عاوز بقي اعملها ع متغير يعني مثلا عاوز ازود كلمة تانية ع كلمة
363بصوا
364def ahmed(a):
365 print ("Ahmed"+a)
366
367كدا ضيÙنا المتغير الجديد بتاعنا تعالوا بقي نشغل المتغير دا
368ahmed (" Mohamed")
369>>> 'ahmed Mohamed'
370Ùهمت Ø¹Ø±ÙØª ازاي بنضي٠للدالة الشئ الجديد اللي عاوزين نضيÙهولها
371ahmed يعني اي قيمة عاوزين الدالة تتطبعها من الاخر مش هتتطبع غير بعد كلمة
372عشان دي الشئ الاساسي اللي كنا عاملينو للمتغير ÙØ§ÙˆÙ„ مرة
373بس كدا خلص درس النهارده
374(12)----ازاي تعمل دالة بتجمع بين رقمين او اكتر--------Functions الدوال
375دلوقت انا عاوز اعمل دالة بتجمع بين رقمين
376هنشتغل شغلنا العادي
377def add():
378 print (1+1)
379add()
380>>> 2
381Ø§ÙØ±Ø¶ عاوز المستخدم هو اللي Ø¨ÙŠØØ· الارقام اللي بتتجمع Ù†ÙØ³Ù‡Ø§ اعمل ايه
382 parameter Ù‡ØØ·Ù„Ùˆ
383def add(a,b): *يعني بتاخد متغيرين الي المستخدم هيضيÙهم بشرط متغيرين اتنين بس*
384 print (a+b)
385اكيد Ùهمت الموضوع ماشي ازاي
386عشان اشغلها بقي واستخدمها هقولو ايه؟
387add (1,25)
388>>> 26
389خدت بالك انت من العلامة السÙلية دي انت ممكن تبدلها بزائد مثلا
390Ø§ÙØ±Ø¶ بقي عاوز اخلي الدالة بتنقص مش بتزود هعمل ايه
391def add(a,b):
392 print (a-b)
393هااا Ùهمت
394Ø§ÙØ±Ø¶ عاوز اعدل شكل العلامة السÙلية دي واخليها زائد هعمل ايه هعمل كدا
395def add(a-b):
396 print (a-b)
397بس كدا خلص درس النهارده وكل ØØ§Ø¬Ø© اتÙهمت Ùيه
398(13)--------ازاي ØªØØ· دالة انت اللي عاملها Ùمتغير--------Functions الدوال
399دي الدالة اللي انا هعملها
400def sub(first_num,Second_num):
401 print (first_num-Second_num)
402ودا بعد Ù…ØØ·Ù‡Ø§ Ùمتغير
403a = sub(5-2)
404>>> 3
405اما اجي بقي اطبع المتغير
406print (a)
407>>> None
408الله الله الله دي مشكلة كبيرة جدا ايه اللي ØØµÙ„ نعمل ايه طاب ايه الØÙ„
409return هتظهر هنا دالة جديده اسمها
410ودي بتستخدم ÙÙŠ تعيين الدالة كلها اللي انت عاملها من جديد
411اشتغل بيها ازاي بقي هتعمل كدا
412def sub(first_num,Second_num):
413 return (first_num-Second_num)
414Ø´ÙˆÙØª بتستخدم ازاي !ها Ùهمت الجزء دا اظن انك Ùهمت تمام
415تعالي نجربها كدا
416sub(5,2)
417>>> 3
418تعالي بقي Ù†ØØ·Ù‡Ø§ Ùمتغير
419a = sub(5,2)
420print (a)
421>>> 3
422add وبكدا نقدر نستغني ÙØ¨Ø¹Ø¶ Ø§Ù„ØØ§Ø¬Ø§Øª عن دالة None وبكدا نكون ØÙ„ينا مشكلة
423بس كدا خلص الدرس
424(14)---------------------ازااي تعملي الة ØØ§Ø³Ø¨Ø© باللي اتعلمناه-------------------------Functions الدوال
425الدروس اللي ÙØ§ØªØª كانت ØØ§Ø¬Ø§Øª Ù‡Ø§ÙŠÙØ© زي الطباعة وكدا
426تعالوا بقي نعر٠هل الدالة ممكن تعمل ØØ§Ø¬Ø© اعلي من كدا
427يعني مثلا لو قولنا كدا
428def loop():
429 a = 0
430 while a<100:
431 print (a)
432>>> loob()
433>>> هيعد يطبع Ø§ØµÙØ§Ø± الي ما لا نهاية
434بتÙيدك ÙØ§Ù†Ùƒ تققسم البرنامج بتاعك يعني بتعمل ØØ§Ø¬Ø§Øª صغيرة تجيبلك ØØ§Ø¬Ø§Øª كبيرة
435تعالي نعمل ØØ§Ø¬Ø© تانية مثلا
436def add(a,b):
437 return a+b
438
439>>> add (10,20)
44020
441ودي ØØ§Ø¬Ø© تانية بردو وكل اللي بنعمله دا مجرد مراجعه عاللي ÙØ§Øª عشان مننساش ØØ§Ø¬Ø©
442لو عاوز مثلا ØªØØ· المتغير بتاعك جاهز ÙØ§Ù„دالة اللي هتعملها تعمل ايه؟ تعمل كدا كدا اهو
443def add(a=20,b=10):
444 return a+b
445
446>>> add()
44730
448Ùهمت اظن كل دا قديم وبكدا Ù†Ø³ØªÙØ§Ø¯ ان انت تقدر تعمل متغيرات جوا الدالة الجديده اللي انت عملتها
449ممكن مثلا تعمل كدا
450def rrrr():
451 a = 10
452 if a==10:
453 print ("yes")
454>>> rrrr()
455yes
456Ø´ÙˆÙØª عملنا ايه بنعمل ØØ§Ø¬Ø§Øª سهلة وبسيطة تقدر انت تخليها معقدة كدا مع Ù†ÙØ³Ùƒ وتÙهمها Ù„Ù†ÙØ³Ùƒ كل ØØ§Ø¬Ø© بتيجي بالتطبيق
457اذن انت بتعمل الدالة وبتعمل اي ØØ§Ø¬Ø© ÙØ¯Ù…اغك جوا الدالة بتاعتك
458تعالي بقي نعمل تطبيق عملي للي اØÙ†Ø§ خدناه بس
459هو عبارة عن الة ØØ§Ø³Ø¨Ø© تمام ØŸ
460الة ØØ§Ø³Ø¨Ø© المعرو٠انها اقل ØØ§Ø¬Ø© تقدر تعملها تعالي كدا نجرب
461
462
463
464print ("*"*20) *انا بخليه يطبعلي نجوم بØÙŠØ« انو يبقي شكل البرنامج ØÙ„Ùˆ ØØ·ÙŠØªÙ„Ùˆ النجمة بين علامات تنصيص وضربتها ÙØ§Ù„عدد اللي انا عاوز*
465def add(x,y):
466 return x+y *واديتها قيمة انها تجمع بين رقمين اللي هما الرقمين اللي هينضاÙوا من المستخدم add عملت دالة جديدة باسم *
467
468def sub (x,y):
469 return x-y *هنا بقي عملت دالة بتطرØ*
470
471def multi(x,y)
472 return x*y *هنا دالة بتضرب*
473
474user_input = input ("Enter operation number : ") *Ø¨ÙŠØØ¯Ø¯ نوع العملية اللي انا عاوزها هل جمع او غيرو عن طريق Ø§Ø¶Ø§ÙØ© رقم العملية input عملت*
475
476user_input2 = input ("Enter The first number : ") *لاول رقم المستخدم هيضيÙÙˆ عشان يتجمع عالرقم اللي ØªØØªÙˆ input عملت*
477user_input3 = input ("Enter The second number : ") *هيتجمع مع الرقم اللي Ùوقو *
478if user_input == "1" :
479 print (add(user_input2 + user_input3))
480*قولتلو لو المستخدم كتب 1 ÙØ§Ù„انبوت بتاع يوزر انبوت هاتله العملية الاولي اللي هي الجمع واجمعلي الرقمين اللي المستخدم ضاÙهم ÙØ§Ù„اتنين انبوت اللي انا عملتهم*
481
482user_input4 = input ("Enter the first number : ")
483user_input5 = input ("Enter the second number : ")
484if user_input == "2" :
485 print (sub(user_input4 - user_input5))
486*قولتلو لو المستخدم كتب رقم اتنين هاتله العملية التانية اللي هي الضرب ÙˆØØ·ÙŠØªÙ„Ùˆ المتغيرين بتوع الانبوت اللي المستخدم هيضيÙهم*
487
488user_input6 = input ("Enter the first number : ")
489user_input7 = input ("Enter the second number : ")
490if if user_input == "3" :
491 print (multi(user_input6 * user_input7))
492*هنا قولتلو لو المستخدم كتب 3 هاتله العملية التالته اللي هي الضرب واضربلي الرقمين اللي المستخدم هيضيÙهم ÙØ§Ù„اتنين انبوت اللي انا عملتهم*
493
494وبكدا يكون الكود خلص وهو Ù…Ø´Ø±ÙˆØ ÙƒØ§Ù† مجرد ككود بسيط وممكن انت لو Ùيه علامات تانية زي القسمة تقدر تضيÙها مع Ù†ÙØ³Ùƒ يعني
495اهم ØØ§Ø¬Ø© التطبيق تطبق مع Ù†ÙØ³Ùƒ وتØÙ„ المشاكل كلها
496ممكن انت بقي تعدل ÙØ§Ù„شكل والعمليات وتعدل الكود كلو انا كنت مجرد بشرØÙ„Ùƒ وبوضØÙ„Ùƒ ايه اللي بيتكتب ÙØ§Ù„قيم دي بالانجليزي
497يلا سامو عليكو
498(15)--------------------------nested loobs جزء تاني من--------------------------------------Functions الدوال
499nested loobsدي ØØ§Ø¬Ø© كدا شبه ال
500انا ممكن اعمل دالة جوا دالة زي دي مثلا
501
502def hello(name):
503 def hello1():
504 return ("Hello ")
505 print (hello1() + name)
506
507>>> hello ("World")
508Hello World
509>>> hello("Ahmed")
510Hello Ahmed
511
512Ùهمت الدالة بتتعمل ازاي هو دا مشروع درسنا النهارده انك تعمل ØØ§Ø¬Ø© زي اللي انا عملتها دي
513 بس كدا nested loobs ÙˆØ§ØØ¨ اقولك ان الدرس داا جزء من
514سلامو عليكم
515(16)-----------------------------------------------------العمليات ÙÙŠ الدوال---------------Functions الدوال
516النهارده هنتعلم ازاي نستدعي دالة جوا دالة
517تعالوا نعمل دالة مثلا ونشغل الكود بتاعنا
518
519def ahmed():
520 print("Ahmed")
521
522>>> ahmed()
523Ahmed
524
525دا كان ØØ§Ø¬Ø© بسيطة من اللي بنعملها ازاي بقي نستدعي الدالة جواها
526def say_name():
527 ahmed()
528
529>>> say_name()
530Ahmed
531Ø´ÙˆÙØª ازاي عملنا دالة جوا دالة تانية
532تعالي نعمل ØØ§Ø¬Ø© تانية
533
534def ahmed(name,age,gender):
535 print ("my name is : ",name)
536 print ("my age is : ",age)
537 print ("my gender is : ",gender)
538
539>>> ahmed("Ahmed Muhammed" , 20, "Male")
540my name is : Ahmed Mohamed
541my age is : 20
542my gender is : Male
543
544Ùيه بقي ØØ§Ø¬Ø© ممكن نسميها الوراثة ÙØ§Ù„دوال
545يعني بندي دالة لدالة تانية مثلا هكذا بص كدا
546def mohamed():
547 ahmed("Ahmed Muhammed" , 20, "Male")
548
549>>> mohamed()
550my name is : Ahmed Mohamed
551my age is : 20
552my gender is : Male
553Ø´ÙˆÙØª جات ازاي Ø´ÙˆÙØª عملنا ايه عشان نعمل اللي بنسميها الوراثة ÙØ§Ù„دوال
554دا بقي اسمو استدعاء دالة داخل دالة تانية
555(17)---------------------اسناد دالة لمتغير(العمليات ع الدوال)-------------Functions الدوال
556قالي مثلا عندي دالة
557def name(): *دي الدالة اللي عملناها*
558 return ("Ahmed")
559>>> def myprint(name): *دي بنكمل عالدالة ÙØ³Ø·Ø± تاني *
560 print (name)
561>>> myprint("Ahmed") *ودا الامر اللي كتبناه*
562Ahmed
563>>> myprint(name()) *ودا امر تاني *
564Ahmed
565>>> def xname(): *ودي دالة جديده عملناها*
566 print("Ahmed")
567>>> xname() *ودا الامر اللي اديناهولها*
568Ahmed *ودي النتيجة*
569>>> def xname(): *عملنا دالة جديده وعدلنا Ùيها*
570 return ("Ahmed")
571>>> xname() *اديننالو امر الدالة عشان يطبع اØÙ…د*
572'Ahmed'
573>>> x = xname() *ØØ·ÙŠÙ†Ø§ الدالة Ùمتغير*
574>>> print(x) *طبعنا المتغير*
575Ahmed *ودي النتيجة*
576وبكدا نكون عملنا العمليات ع الدوال وعرÙنا بعضها وعرÙنا بنعمل دا كلو ازاي
577(18)-----------------التعديل ع كل المتغيرات ÙÙŠ دالة جديده-----------------Functions الدوال
578تعالي بقي مثلا عندي الدالة دي وعاوز اعمل عليها متغيرات كتير
579def myprint(ahmed,mohamed,asdas,sadsad,sadsa,sadasdasd,sad,asd,hgjhsdac,czxardgt,safsdatad)
580*all عاوز اعدل ع دا كلو هيطلعلي دالة جديده اسمها*
581*args اختصارها ÙØ§Ù„برمجة هو
582ايوه هو نجمة وبعدها كلمة ارجس
583اشتغل بيها ازاي بقي ولا اعمل ايه ولا انيل ايه بص ياعمي معايا كدا
584def myprint(*args):
585 print (args)
586>>> myprint("Ahmed")
587('Ahmed',)
588>>> myprint ("sadasd",54,[545,2185,12458],{4,56485,488},(544,45,45,4,8,5,4))
589('sadasd', 54, [545, 2185, 12458], set([488, 4, 56485]), (544, 45, 45, 4, 8, 5, 4))
590>>> def myprint(name):
591 print(name)
592>>> myprint("Ahmed",55)
593بتتعمل ازاي args اكيد انت Ùهمت معايا انا عملت ايه ÙˆØ¹Ø±ÙØª
594(19)----------------------------انواع المتغيرات--------------------------Functions الدوال
595بينتقسم المتغير لنوعين هو النوع العام والنوع المØÙ„ÙŠ
596النوع المØÙ„ÙŠ هو اللي بنستخدمو ÙØ§Ù„دوال دا
597اما بقي النوع العادي اللي هي المتغيرات العادية اللي عارÙنها تعالوا كدا نعر٠ازاي
598>>> name = "Ahmed"
599>>> x = 55
600اهي هي دي المتغيرات العامة تعالوا نوضØ
601def myprint():
602 age = 33
603 print (age)
604>>> 33
605دا الي هو المتغير المتغير المØÙ„ÙŠ age اهو
606
607Ù…ØÙ„ÙŠ = Local
608عام = Global
609
610Ùهو المتغير المØÙ„ÙŠ دا Ù‡ÙŠÙØ¶Ù„ Ù…ØÙ„ÙŠ الا بقي لو غيرناه لمتغير عام
611تعالوا Ù†ÙˆØ¶Ø Ù…Ø«Ù„Ø§
612def myprint ():
613 global name *وهي دي الدالة الللي بتØÙˆÙ„ المتغير من Ù…ØÙ„ÙŠ Ù„ عام*
614 name = "Ahmed"
615 print (name)
616>>> myprint()
617Ahmed
618>>> print(name)
619Ahmed
620
621ومن كدا نعر٠ان المتغير برا الدالة يبقي عام
622جوا الدالة يبقي Ù…ØÙ„ÙŠ
623بس كدا خلص الدرس سلامو عليكم global واللي بيØÙˆÙ„ المتغير من Ù…ØÙ„ÙŠ لعام هي دالة
624--
625دلوقت مثلا عاوزين نعمل برنامج يسجل الطلاب اللي داخلين جديد كلية او مدرسة معينة
626وبعد مياخد المعلومات هيخزنها ÙØ¯Ø§Ù„Ø© بØÙŠØ« لو استدعيتها هيكتب المعلومات
627تعالوا نبدا البرنامج دا كدا
628
629
630def info(name,age,sex):
631 print ("The student name is : ",name)
632 print ("The student age is : ",age)
633 print str(("The student sex is : ",sex))
634
635sname=input("Enter your name : ")
636sage=input("Enter your age : ")
637ssex=input("Enter your six : ")
638
639print ("*"*80)
640print ("press '1' to print more information")
641choice=input("Enter your choice : ")
642if choice=="1":
643 print ("Any thing")
644print("*"*80)
645
646تعالوا بقي نشغل المشروع
647وبكدا نكون خلصنا المشروع تقدر انت تختبرو عالبايثون عندك ولو Ùيه غلط ÙØ§Ù„اوبجيكت دا ممكن تصلØÙ‡ انا عاوزك تبقي ÙØ§Ù‡Ù…
648طبعا انت ممكن تعدل اي ØØ§Ø¬Ø© ÙØ§Ù„اوبجيكت وتعمل اللي ع مزاجك انا عاوزك تÙهم
649سلامو عليكو
650---------------------------------------------------------------------------------------------------