325 lines
		
	
	
		
			8.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			325 lines
		
	
	
		
			8.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | |||
|  | title: Basic Operators | |||
|  | localeTitle: المشغل الأساسي | |||
|  | --- | |||
|  | ## المشغل الأساسي
 | |||
|  | 
 | |||
|  | المشغلين هم رموز تخبر المترجم أن يقوم بعملية محددة (بمعنى حسابي ، مقارنة ، منطقي ، إلخ.) | |||
|  | 
 | |||
|  | أنواع مختلفة من المشغلين في Python مذكورة أدناه: | |||
|  | 
 | |||
|  | 1.  العوامل الحسابية | |||
|  | 2.  مشغلي العلائقية | |||
|  | 3.  مشغلات bitwise | |||
|  | 4.  مشغلي الواجبات | |||
|  | 5.  العوامل المنطقية | |||
|  | 6.  مشغلي العضوية | |||
|  | 7.  مشغلي الهوية | |||
|  | 
 | |||
|  | #### العوامل الحسابية
 | |||
|  | 
 | |||
|  | يأخذ المشغل الحسابي اثنين من المعاملات كمدخل ، وينفذ عملية حسابية ويعيد النتيجة. | |||
|  | 
 | |||
|  | خذ بعين الاعتبار التعبير **"a = 2 + 3"** . هنا ، `2` و `3` هي _المعاملات_ و `+` هو _المشغل الحسابي_ . يتم تخزين نتيجة العملية في المتغير a. | |||
|  | 
 | |||
|  | المشغل أو العامل | |||
|  | 
 | |||
|  | وصف | |||
|  | 
 | |||
|  | استعمال | |||
|  | 
 | |||
|  | + | |||
|  | 
 | |||
|  | ينفذ إضافة على المعاملات | |||
|  | 
 | |||
|  | 12 + 3 = 15 | |||
|  | 
 | |||
|  | \- | |||
|  | 
 | |||
|  | ينفذ الطرح على المعاملات. يطرح المعامل الأيمن من المعامل الأيسر | |||
|  | 
 | |||
|  | 12 - 3 = 9 | |||
|  | 
 | |||
|  | \* | |||
|  | 
 | |||
|  | ينفذ الضرب على المعاملات | |||
|  | 
 | |||
|  | 12 \* 3 = 36 | |||
|  | 
 | |||
|  | / | |||
|  | 
 | |||
|  | ينفذ شعبة على المعاملات. يقسم المعامل اليسار بالمعامل الصحيح | |||
|  | 
 | |||
|  | 12/3 = 4 | |||
|  | 
 | |||
|  | ملاحظة: عند استخدام رقمين صحيحين ، تختلف النتيجة بين Python 2 و Python 3. | |||
|  | 
 | |||
|  | 5/2 = 2 في Python 2 | |||
|  | 
 | |||
|  | 5/2 = 2.5 في Python 3 | |||
|  | 
 | |||
|  | ٪ | |||
|  | 
 | |||
|  | ينفذ معامل على المعاملات. إرجاع الباقية التي تم الحصول عليها أثناء تقسيم المعامل الأيسر بالمعامل الصحيح | |||
|  | 
 | |||
|  | 16٪ 3 = 1 | |||
|  | 
 | |||
|  | \*\* | |||
|  | 
 | |||
|  | ينفذ عملية الأسي. يتم رفع المعامل الأيسر إلى قوة المعامل الأيمن | |||
|  | 
 | |||
|  | 12 \*\* 3 = 1728 | |||
|  | 
 | |||
|  | // | |||
|  | 
 | |||
|  | ينفذ عملية قسم الطابق. إرجاع الجزء المتكامل للحاصل الذي تم الحصول عليه بعد غوص المعامل الأيسر بالمعامل الأيمن | |||
|  | 
 | |||
|  | 18 // 5 = 3 | |||
|  | 
 | |||
|  | ملاحظة: للحصول على النتيجة في نوع عائم ، يجب أن يكون أحد المعاملات أيضًا من نوع عائم. | |||
|  | 
 | |||
|  | #### مشغلي العلائقية
 | |||
|  | 
 | |||
|  | يتم استخدام عامل العلائق لمقارنة المعاملين لتحديد العلاقة بينهما. تقوم بإرجاع قيمة منطقية استنادًا إلى الشرط. | |||
|  | 
 | |||
|  | المشغل أو العامل | |||
|  | 
 | |||
|  | وصف | |||
|  | 
 | |||
|  | استعمال | |||
|  | 
 | |||
|  | \> | |||
|  | 
 | |||
|  | إرجاع True إذا كان المعامل الأيسر أكبر من المعامل الأيمن إرجاع False خلاف ذلك | |||
|  | 
 | |||
|  | 12> 3 إرجاع True | |||
|  | 
 | |||
|  | < | |||
|  | 
 | |||
|  | إرجاع True إذا كان المعامل الأيمن أكبر من المعامل الأيسر إرجاع False خلاف ذلك | |||
|  | 
 | |||
|  | 12 <3 ترجع خطأ | |||
|  | 
 | |||
|  | \== | |||
|  | 
 | |||
|  | إرجاع True إذا كان كلا المعاملات متساوية إرجاع False خلاف ذلك | |||
|  | 
 | |||
|  | 12 == 3 تقوم بإرجاع False | |||
|  | 
 | |||
|  | \> = | |||
|  | 
 | |||
|  | إرجاع True إذا كان المعامل الأيسر أكبر من أو يساوي المعامل الأيمن إرجاع False خلاف ذلك | |||
|  | 
 | |||
|  | 12> = 3 ترجع True | |||
|  | 
 | |||
|  | <= | |||
|  | 
 | |||
|  | إرجاع True إذا كان المعامل الأيمن أكبر من أو يساوي المعامل الأيسر إرجاع False خلاف ذلك | |||
|  | 
 | |||
|  | 12 <= 3 بإرجاع خطأ | |||
|  | 
 | |||
|  | ! = | |||
|  | 
 | |||
|  | إرجاع True إذا كان كلا المعاملات غير متساوية إرجاع False خلاف ذلك | |||
|  | 
 | |||
|  | 12! = 3 ترجع True | |||
|  | 
 | |||
|  | #### مشغلات bitwise
 | |||
|  | 
 | |||
|  | يقوم عامل تشغيل البت بإجراء العمليات على المعالجات شيئًا فشيئًا | |||
|  | 
 | |||
|  | خذ بعين الاعتبار a = 2 (في الترقيم الثنائي ، 10) و b = 3 (في الترقيم الثنائي ، 11) للأعراف أدناه | |||
|  | 
 | |||
|  | المشغل أو العامل | |||
|  | 
 | |||
|  | وصف | |||
|  | 
 | |||
|  | استعمال | |||
|  | 
 | |||
|  | و | |||
|  | 
 | |||
|  | ينفذ bitwise AND العملية على المعاملات | |||
|  | 
 | |||
|  | أ & ب = 2 ثنائي: 10 & 11 = 10 | |||
|  | 
 | |||
|  | | | |||
|  | 
 | |||
|  | ينفّذ عملية "بالتبويض" أو "OR" في المعاملات | |||
|  | 
 | |||
|  | أ | ب = 3 ثنائي: 10 | 11 = 11 | |||
|  | 
 | |||
|  | ^ | |||
|  | 
 | |||
|  | ينفذ عملية XOR على المعامل | |||
|  | 
 | |||
|  | a ^ b = 1 ثنائي: 10 ^ 11 = 01 | |||
|  | 
 | |||
|  | ~ | |||
|  | 
 | |||
|  | ينفذ bitwise NOT العملية على المعامل يقلب كل بت في المعامل | |||
|  | 
 | |||
|  | ~ أ = -3 ثنائي: ~ (00000010) = (11111101) | |||
|  | 
 | |||
|  | \>> | |||
|  | 
 | |||
|  | ينفذ التحول الصحيح بالبت. يغير بتات المعامل الأيسر ، مباشرة بعدد البتات المحددة كمعامل صحيح | |||
|  | 
 | |||
|  | أ >> ب = 0 Binary: 00000010 >> 00000011 = 0 | |||
|  | 
 | |||
|  | << | |||
|  | 
 | |||
|  | ينفّذ تحوُّل جهة اليسار. يغير بتات المعامل الأيسر ، متبقيًا بعدد البتات المحددة كمعامل صحيح | |||
|  | 
 | |||
|  | أ <b = 16 Binary: 00000010 << 00000011 = 00001000 | |||
|  | 
 | |||
|  | #### مشغلي الواجبات
 | |||
|  | 
 | |||
|  | يتم استخدام عامل التشغيل لتعيين قيم للمتغير. يتم دمج هذا عادة مع عوامل التشغيل الأخرى (مثل الحساب ، البايت) حيث يتم تنفيذ العملية على المعاملات ويتم تعيين النتيجة إلى المعامل الأيسر. | |||
|  | 
 | |||
|  | خذ بعين الاعتبار الأمثلة التالية ، **أ = 18** . هنا `=` هو عامل التنازل ، ويتم تخزين النتيجة في متغير أ. **a + = 10** . هنا `+=` مشغل عامل ، والنتيجة مخزنة في متغير أ. هذا هو نفس a = a + 10. | |||
|  | 
 | |||
|  | المشغل أو العامل | |||
|  | 
 | |||
|  | استعمال | |||
|  | 
 | |||
|  | \= | |||
|  | 
 | |||
|  | a = 5. يتم تعيين القيمة 5 للمتغير a | |||
|  | 
 | |||
|  | \+ = | |||
|  | 
 | |||
|  | a + = 5 يساوي a = a + 5 | |||
|  | 
 | |||
|  | \- = | |||
|  | 
 | |||
|  | a - = 5 يساوي a = a - 5 | |||
|  | 
 | |||
|  | \* = | |||
|  | 
 | |||
|  | a \* = 3 يساوي a = a \* 3 | |||
|  | 
 | |||
|  | / = | |||
|  | 
 | |||
|  | a / = 3 تعادل a = 3 / | |||
|  | 
 | |||
|  | ٪ = | |||
|  | 
 | |||
|  | a٪ = 3 يساوي a = a٪ 3 | |||
|  | 
 | |||
|  | \*\* = | |||
|  | 
 | |||
|  | a \*\* = 3 يساوي a = a \*\* 3 | |||
|  | 
 | |||
|  | // = | |||
|  | 
 | |||
|  | a // = 3 يساوي a = a // 3 | |||
|  | 
 | |||
|  | & = | |||
|  | 
 | |||
|  | a & = 3 تعادل a & 3 | |||
|  | 
 | |||
|  | | = | |||
|  | 
 | |||
|  | a | = 3 يساوي a = a | 3 | |||
|  | 
 | |||
|  | ^ = | |||
|  | 
 | |||
|  | a ^ = 3 يساوي a = a ^ 3 | |||
|  | 
 | |||
|  | \>> = | |||
|  | 
 | |||
|  | a >> = 3 يساوي a = a >> 3 | |||
|  | 
 | |||
|  | << = | |||
|  | 
 | |||
|  | أ <3 = تعادل a = a << 3 | |||
|  | 
 | |||
|  | #### العوامل المنطقية
 | |||
|  | 
 | |||
|  | يستخدم المشغل المنطقي لاتخاذ قرار على أساس شروط متعددة. العوامل المنطقية المستخدمة في بايثون هي `and` ، `or` `not` | |||
|  | 
 | |||
|  | المشغل أو العامل | |||
|  | 
 | |||
|  | وصف | |||
|  | 
 | |||
|  | استعمال | |||
|  | 
 | |||
|  | و | |||
|  | 
 | |||
|  | إرجاع True إذا كان كلا المعاملات صحيح إرجاع False خلاف ذلك | |||
|  | 
 | |||
|  | أ و ب | |||
|  | 
 | |||
|  | أو | |||
|  | 
 | |||
|  | إرجاع True إذا كان أي أحد من المعاملات هو True إرجاع False خلاف ذلك | |||
|  | 
 | |||
|  | ا او ب | |||
|  | 
 | |||
|  | ليس | |||
|  | 
 | |||
|  | إرجاع True إذا كان المعامل False إرجاع False خلاف ذلك | |||
|  | 
 | |||
|  | ليس | |||
|  | 
 | |||
|  | #### مشغلي العضوية
 | |||
|  | 
 | |||
|  | يتم استخدام عامل العضوية لتحديد العضوية في أي تسلسل (القوائم ، السلاسل ، الصفوف). `in` `not in` مشغلي العضوية | |||
|  | 
 | |||
|  | `in` إرجاع True إذا تم العثور على القيمة المحددة في التسلسل. إرجاع False خلاف ذلك. `not in` العودة True إذا لم يتم العثور على القيمة المحددة في التسلسل. إرجاع False خلاف ذلك. | |||
|  | 
 | |||
|  | ###### مثال للاستخدام
 | |||
|  | 
 | |||
|  |  `a = [1,2,3,4,5]  | |||
|  |   | |||
|  |  #Is 3 in the list a?  | |||
|  |  print 3 in a # prints True  | |||
|  |   | |||
|  |  #Is 12 not in list a?  | |||
|  |  print 12 not in a # prints True  | |||
|  |   | |||
|  |  str = "Hello World"  | |||
|  |   | |||
|  |  #Does the string str contain World?  | |||
|  |  print "World" in str # prints True  | |||
|  |   | |||
|  |  #Does the string str contain world? (note: case sensitive)  | |||
|  |  print "world" in str # prints False  | |||
|  |   | |||
|  |  print "code" not in str # prints True  | |||
|  | `  | |||
|  | 
 | |||
|  | #### مشغلي الهوية
 | |||
|  | 
 | |||
|  | يتم استخدام عامل هوية للتحقق من مشاركة متغيرين في نفس موقع الذاكرة. `is` `is not` مشغلي الهوية | |||
|  | 
 | |||
|  | `is` إرجاع True إذا كانت المعاملات تشير إلى نفس الكائن. إرجاع False خلاف ذلك. `is not` إرجاع True إذا كانت المعاملات لا تشير إلى نفس الكائن. إرجاع False خلاف ذلك. | |||
|  | 
 | |||
|  | يرجى ملاحظة أن القيمتين عند المساواة ، لا تحتاجان إلى أن تكونا متطابقتين. | |||
|  | 
 | |||
|  | ###### مثال للاستخدام
 | |||
|  | 
 | |||
|  |  `a = 3  | |||
|  |  b = 3  | |||
|  |  c = 4  | |||
|  |  print a is b # prints True  | |||
|  |  print a is not b # prints False  | |||
|  |  print a is not c # prints True  | |||
|  |   | |||
|  |  x = 1  | |||
|  |  y = x  | |||
|  |  z = y  | |||
|  |  print z is 1 # prints True  | |||
|  |  print z is x # prints True  | |||
|  |   | |||
|  |  str1 = "FreeCodeCamp"  | |||
|  |  str2 = "FreeCodeCamp"  | |||
|  |   | |||
|  |  print str1 is str2 # prints True  | |||
|  |  print "Code" is str2 # prints False  | |||
|  |   | |||
|  |  a = [10,20,30]  | |||
|  |  b = [10,20,30]  | |||
|  |   | |||
|  |  print a is b # prints False (since lists are mutable in Python)  | |||
|  | ` |