السلام عليكم ورحمة الله وبركاته
اليوم موضوع جميل ومهم وبسيط (فقط اذا ركزت) موضوع مهم تحتاجه في كتابة اكوادك ولكل دالة من هذه الدوال تفيدك بشي وتختصر لك شيء وكثير من
من المبتدئين يعانون منها فقط يثبتون على الامثلة التي يرونها ويشعرون كانهم وضيفتها لكن في الاصل لا شيء معتمدين على امثلة المواقع المهم ,,,
كثير منا ينسى هذه الدوال بالطبع لعدم وجود التركيز والتطبيق الكثير ولذلك يكون النسيان قوي اما اذا قارنته بالشخص الذي يطبق ويكون متعمد ان يكتب احد هذه
الدوال في مشروعه سوف تكون في افكاره ولا ينساها المهم سوف نبدء في دراسة هذه الدوال واعطاء امثلة للاخذ الفكرة المهم اصدقائي ,, انا احتاج منكم فقط
التركيز + التطبيق = الاتقان فـ بالبداية سمي باسم الله تعالى وااترك كلشي في بالك ولا تدرس هذه الدوال وانت مشغول في ال yahoo , or facebook وغيرها
او منتديات وكل5ثواني تشاهد لك شيء لا هذا خطا اغلق كل شيء وابدء بالمشاهدة .
بسم الله الرحمن الرحيم
دالة F i l t e r
من اسمها تبين فانها تنقي حسب الطلب اي يعني انتة لديك كود فيه اسماء وارقام ورموز تريد ان تنقي فقط الارقام وتترك الرموز والاسماء
يمكنك ببساطة عن طريق دالة filter ان تنقي ماتشاء
ووتعتمد هي على Functiion +sequence
اي دالة واسم القائمة
نعطي مثال معين
names = ["omar","oday","or","orange"] def name(chars): if chars[0]=="o": retuern True retuen False filters = filter(name,names) print filters
lنشرح الكود, باسم الله
في البداية
عملنا متغير من نوع list
names = ["omar","oday','or','orange]
ومن ثم عملنا دالة
def name(chars): if chars[0]=="o"
اشترطت الدالة في اخذ اول حرف من الاسماء وهو حرف O
ومن ثم عملنا
retuern True retuen False
اذا كان صحيح سوف يقوم بطباعته واذا خطا سوف يعيد مرة اخرى
ثم عملنا متغير
filters = filter(name,names)
وضعنا فيه (لاحض) تضع في البداية اسم الدالة ومن ثم اسم المتغير الذي يحوي الشيء الذي كتبته انت من اسماء وغيرها
ثم تقوم بطباعته لكي يضهر
ناخذ مثال ثاني
سكربت يقوم باخذ الاعداد الزوجية (num%2==0)
باسم الله الرحمن الرحيم
num = [1,2,3,4,5,6]
def nums(numper):
if (numper%2==0):
return True
return False
n = filter(nums,num)
print nاختصر من الشرح
في البداية عملنا متغير
يحتوي ارقام
ومن ثم عملنا دالة تاخذ paramate واحد
ثم قسمنا الارقام على 2
وكذلك ايضا قمنا باعادة القيمة اذا كانت True سوف يطبعه واذا كانت False سوف يطبع خطا ويعيد مرة اخرى
تمرين .
اكتب مثال يحتوي على متغير من نوع list يحتوي على كلمات وارقام وقم باخذ باخذ فقط الارقام
تم بحمد الله تعالى
2- دالة Lambda
لكل شخص له تعريف عليها بالنسبة لي هي تشبه ال def لكنها تعتبر جسم لها في بعض الاحيان وايضا هي تاخذ بارامتر
وتستخدم في حالة اختصارية اي لديك كثير من الكود يمكنك ان تختصرها في هذه الدالة وايضا نقول تستخدم في حالات لاتريد ان تعمل دالة تريد ان تختصر الكود
لنرى الامثلة سوف تفهم
lam = lambda n1,n2:n1+n2 lam(5,2) لو تكتبه في def راح تلاحض طويلة ولكن lambda قليلة
OR
lam = lambda **num:num
print lam("names = name,num=123456,r=*^%$$%")fوضعنا له بارمترات
اعتقد مفهومة الحالة جدا .
تم بحمدالله
3 - دالة Global
وهي دالة فرعية اي انها تقوم بتغير الناتج الداخلي والخارجي
مفهوم اكثر مثل لديك في داخل الدالة رقم 1 وخارج اكواد الدالة متغير يحتوي على رقم 2
تريد ان تجعل هذا المتغير يحمل رقم واحد اي تغيره
لازم تكتب اكواد كثير وتعمل replace d حتى تغير لكن global تسهل عليك هذا الشيء
After >>>> before
fوايضا في بعض الاحيان تستعمل لتعريف متغيرات
متغيرات فارغة ويمكنك من خلالها ان تقوم باستعمالها
المهم
نبدا بالامثلة للتوضيح اكثر
المهم
نبدا بالتوضيح
def chan():
global x
x = 4
return x
print "is num"
x = 5
print "Now Is Num New"
print chan()
print xبسم الله نبدء بشرح الكود
في البداية عملنا دالة
def chan()
ومن ثم عينا متغير من نوع global
الذي سوف يتم تغير كل المتغيرات التي يحملن ارقام الى الرقم الذي يملكه هذا المتغير
كما ذكرنا
global x
ومن ثم اسندنا للمتغير قيمة التي سوف يصل تاثيرها لخارج الدالة
x =4
ومن ثم قمنا باعادة القيمة
return x
ثم عملنا متغير ويحتوي على رقم
5 ولاننا نريد ان يتغير هذا الرقم الى الرقم الذي في داخل الدالة
x =5
ثم قمنا بطباعة اول شيء الدالة ليتم العمل على المتغيرات
print chan
ومن ثم قمنا بطبع المتغير الذي سوف نغيره
اعتقد المثال واضح
ولا تثبت على هذا المثال يوجد عدة امثلة ابحث وانت واكتب بنفسك امثلة
تم بحمد الله تعالى
4 - Assert
دالة تحققية اي انها تتاكد من وجود شيء انت تحدده سواء كان رقم او اسم او رمز وغيرها ... وهي بسيطة العمل
مثال بسيط
s = "mustafa" assert (s)=="ahmed" print "hello"
عملنا متغير يحتوي على اسم lمصطفى
ثم تاكدنا ان المتغير يحتوي على اسم
ثم طبعنا كلمة hello
تمرين *
اعمل متغير يحتوي ارقام واتاكد هل المتغير يحتوي على رقم 5
ثم اطبع اي جملة !!
iتم كل شيء بحمد وفضل الله تعالى
هذه اغلب الدوال التي كان يعانيي منها المتبدئين في تطبيقها
قمت باختصار شديد للامثلة واختصار للكلام لكي يسهل ولا حبيت ان اتعمق في عمل الدوال يبقى عليك انت فقط
عليك بالذهاب كتابة في الكوكل اسم الدالة مع بايثون بالانكليزي واقرء عليها واتعمق لكي تسهل عليك
*ملاحضة لاتنسى التمارين
ومارس يدك كثيرا
اذا كان الموضوع يستحق التثبيت خيرا على خيرا واذا كان لا ايضا خيرا على خيرا المهم الفائدة تعم
ادعولي فقط في اتقانه هذه اللغة
احترامي
