الفرق بين المراجعتين ل"Python/complex"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'{{DISPLAYTITLE:الأعداد المركبة في بايثون}} تتكوّن الأعداد المركبّة من جزأين حقيقي وتخيّلي وكلاهما...')
 
 
(8 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة)
سطر 1: سطر 1:
{{DISPLAYTITLE:الأعداد المركبة في بايثون}}
+
<noinclude>{{DISPLAYTITLE:الأعداد المركبة في بايثون}}</noinclude>
 
+
تتكوّن الأعداد المركبّة من جزأين حقيقي وتخيّلي وكلاهما من [[Python/float|الأعداد العشرية ذات الفاصلة العائمة]] <code>float</code> ، ويمكن استخدام الخاصيتين <code>z.real</code> و <code>z.imag</code>لاستخراج هذين الجزأين من عدد تخيلي <code>z</code>.
تتكوّن الأعداد المركبّة من جزأين حقيقي وتخيّلي وكلاهما من [[Python/Types/float|الأعداد العشرية ذات الفاصلة العائمة]] <code>float</code>. ولاستخراج هذين الجزئين من عدد تخيلي <code>z</code>، يمكن استخدام <code>z.real</code> و <code>z.imag</code>.
 
  
 
يستخدم الحرفان <code>'j'</code> أو <code>'J'</code> للتعبير عن الأعداد المركبة كما هو موضح في الأمثلة التالية:<syntaxhighlight lang="python3">
 
يستخدم الحرفان <code>'j'</code> أو <code>'J'</code> للتعبير عن الأعداد المركبة كما هو موضح في الأمثلة التالية:<syntaxhighlight lang="python3">
>>>w = 3j  #عدد مركّب الجزء الحقيقي فيه يساوي 0
+
>>>w = 3j  #عدد مركّب الجزء الحقيقي فيه يساوي 0
 
 
 
>>>x = 2+5J
 
>>>x = 2+5J
 
 
>>>y = -3-9j
 
>>>y = -3-9j
 
 
>>>z = 3.1 + 4.5J
 
>>>z = 3.1 + 4.5J
 
 
>>>z.real
 
>>>z.real
 
 
3.1
 
3.1
 +
>>> z.imag
 +
4.5
 +
</syntaxhighlight>
  
>>> z.imag
+
== الدالة  <code>complex()</code>‎ ==
 +
تعيد الدّالة <code>complex()‎</code> عددًا مُركّبًا (complex number) حسب العدد الحقيقي والعدد التّخيّلي المُعطيين، أو تُحوّل سلسلةً نصيّةً أو عددًا إلى عدد مركّب.  
  
4.5
+
== البنية العامة ==
 +
<syntaxhighlight lang="python3">
 +
complex([real[, imag]])
 
</syntaxhighlight>
 
</syntaxhighlight>
  
== التحويل إلى الأعداد المركبة ==
+
== المعاملات ==
تعيد الدالة <code>complex()</code>‎ عددًا مركّبًا يحمل القيمة <code>real + imag*1j</code> أو يحوّل الأعداد أو [[Python/Types/str|السلاسل النصية]] إلى أعداد مركبة. إن كان الوسيط الأول سلسلة نصية، فإنّها ستفسّر كعدد مركّب ويجب استدعاء الدالة دون إضافة وسيط ثانٍ. لا يمكن للوسيط الثاني أن يكون [[Python/Types/str|سلسلة نصيًّة]] على الإطلاق. يمكن لكلا الوسيطين أن يكونا أي نوع من الأنواع العددية (ومن ضمنها الأعداد المركبة). يأخذ الوسيط <code>imag</code> القيمة <code>0</code> افتراضيًا في حال عدم تعريفه، وتعمل الدالّة كمحوّل للأرقام مثل <code>int</code> و <code>float</code>.
+
=== <code>real</code> ===
 +
مُعامل اختياريّ يُمثّل العدد الحقيقيّ،  يُمكن أن تكون قيمته أيّة قيمةٍ عدديّة (ما يشمل الأعداد المركّبة).
  
تعيد الدالة القيمة <code>0j</code> في حال عدم وجود أي وسائط.
+
و يُمكن أن تكون  قيمته سلسلةً نصيّة لتفسيرها إلى عدد مركّب. إن كانت قيمة هذا المُعامل  سلسلةً نصيّة، فيجب استدعاء الدّالة دون مُعاملٍ ثانٍ.
 +
=== <code>imag</code> ===
 +
مُعامل اختياريّ يُمثّل العدد التخيّليّ، يُمكن أن تكون قيمته أيّة قيمةٍ عدديّة (ما يشمل الأعداد المركّبة). إن لم تُمرّر قيمة لهذا المُعامل، فقيمته الافتراضيّة هي صفر.
  
=== ملاحظة: ===
+
على النّقيض من المُعامل <code>real</code>، لا يُمكن لقيمة هذا المُعامل أن تكون سلسلةً نصيّة.
يجب أن لا تحتوي السلاسل النصية على مسافات بيضاء بين العاملين <code>+</code> أو <code>-</code> عند التحويل باستخدام الدالة <code>complex()‎</code>، فمثلًا التعبير <code>complex('1+2j')</code>‎ يعد صحيحًا، أما التعبير <code>complex('1 + 2j')‎</code> فيطلق الخطأ <code>ValueError</code>.
+
 
 +
== القيمة المعادة ==
 +
عدد مركّب.
 +
 
 +
تعيد الدالة القيمة <code>0j</code> في حال عدم وجود أية معاملات.
 +
 
 +
== الاستثناءات ==
 +
* يجب أن لا تحتوي [[Python/str|السلاسل النصية]] على مسافات بيضاء بين العاملين <code>+</code> أو <code>-</code> عند التحويل باستخدام الدالة <code>complex()‎</code>، فمثلًا التعبير <code>complex('1+2j')</code>‎ يعد صحيحًا، أما التعبير <code>complex('1 + 2j')‎</code> فيطلق الخطأ <code>[[Python/built-in exceptions#ValueError|ValueError]]</code>. انظر الأمثلة أدناه.
 +
 
 +
== أمثلة ==
 +
المثال التّالي يوضّح كيفيّة عمل هذه الدّالة:
 +
<syntaxhighlight lang="python3">
 +
>>> complex() # استدعاء الدّالة دون مُعاملات
 +
0j
 +
>>> complex(1, 4) # استدعاء الدّالة بكلا المُعاملين
 +
(1+4j)
 +
>>> complex('3+5j') # استدعاء الدّالة بتمرير سلسلة نصيّة إلى المُعامل الأول
 +
(3+5j)
 +
>>> complex('3+ 5j') # خطأ، انظر الاستثناءات
 +
Traceback (most recent call last):
 +
  File "<stdin>", line 1, in <module>
 +
ValueError: complex() arg is a malformed string
 +
</syntaxhighlight>
 +
 
 +
== ملاحظات ==
 +
* يُمكن استعمال الدّالة <code>complex()‎</code> لتحويل الأعداد إلى أعداد مركّبة كما تُستعمل الدّوال <code>[[Python/int|int()‎]]</code> و <code>[[Python/float|float()‎]]</code>.
 +
 
 +
== انظر أيضًا ==
 +
* [[Python/float|الأعداد العشرية (ذات الفاصلة العائمة) float في بايثون]].
 +
* [[Python/int|الأعداد الصحيحة في بايثون]].
 +
* [[Python/fraction|الأعداد الكسرية في بايثون]].
  
 
== مصادر ==
 
== مصادر ==
صفحتا [https://docs.python.org/3/library/stdtypes.html#numeric-types-int-float-complex Built-in Types]و [https://docs.python.org/3/library/functions.html#complex Built-in Functions] في توثيق بايثون الرسمي.
+
* صفحتا [https://docs.python.org/3/library/stdtypes.html#numeric-types-int-float-complex Built-in Types] و [https://docs.python.org/3/library/functions.html#complex Built-in Functions] في توثيق بايثون الرسمي.
 +
 
 
[[تصنيف:Python]]
 
[[تصنيف:Python]]
 
[[تصنيف:Python Types]]
 
[[تصنيف:Python Types]]
 +
[[تصنيف:Python Function]]
 +
[[تصنيف:Python Built-in Functions]]

المراجعة الحالية بتاريخ 07:57، 22 مايو 2018

تتكوّن الأعداد المركبّة من جزأين حقيقي وتخيّلي وكلاهما من الأعداد العشرية ذات الفاصلة العائمة float ، ويمكن استخدام الخاصيتين z.real و z.imagلاستخراج هذين الجزأين من عدد تخيلي z.

يستخدم الحرفان 'j' أو 'J' للتعبير عن الأعداد المركبة كما هو موضح في الأمثلة التالية:

>>>w = 3j  #عدد مركّب الجزء الحقيقي فيه يساوي 0
>>>x = 2+5J
>>>y = -3-9j
>>>z = 3.1 + 4.5J
>>>z.real
3.1
>>> z.imag
4.5

الدالة complex()

تعيد الدّالة complex()‎ عددًا مُركّبًا (complex number) حسب العدد الحقيقي والعدد التّخيّلي المُعطيين، أو تُحوّل سلسلةً نصيّةً أو عددًا إلى عدد مركّب.

البنية العامة

complex([real[, imag]])

المعاملات

real

مُعامل اختياريّ يُمثّل العدد الحقيقيّ، يُمكن أن تكون قيمته أيّة قيمةٍ عدديّة (ما يشمل الأعداد المركّبة).

و يُمكن أن تكون قيمته سلسلةً نصيّة لتفسيرها إلى عدد مركّب. إن كانت قيمة هذا المُعامل سلسلةً نصيّة، فيجب استدعاء الدّالة دون مُعاملٍ ثانٍ.

imag

مُعامل اختياريّ يُمثّل العدد التخيّليّ، يُمكن أن تكون قيمته أيّة قيمةٍ عدديّة (ما يشمل الأعداد المركّبة). إن لم تُمرّر قيمة لهذا المُعامل، فقيمته الافتراضيّة هي صفر.

على النّقيض من المُعامل real، لا يُمكن لقيمة هذا المُعامل أن تكون سلسلةً نصيّة.

القيمة المعادة

عدد مركّب.

تعيد الدالة القيمة 0j في حال عدم وجود أية معاملات.

الاستثناءات

  • يجب أن لا تحتوي السلاسل النصية على مسافات بيضاء بين العاملين + أو - عند التحويل باستخدام الدالة complex()‎، فمثلًا التعبير complex('1+2j')‎ يعد صحيحًا، أما التعبير complex('1 + 2j')‎ فيطلق الخطأ ValueError. انظر الأمثلة أدناه.

أمثلة

المثال التّالي يوضّح كيفيّة عمل هذه الدّالة:

>>> complex() # استدعاء الدّالة دون مُعاملات
0j
>>> complex(1, 4) # استدعاء الدّالة بكلا المُعاملين
(1+4j)
>>> complex('3+5j') # استدعاء الدّالة بتمرير سلسلة نصيّة إلى المُعامل الأول
(3+5j)
>>> complex('3+ 5j') # خطأ، انظر الاستثناءات
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: complex() arg is a malformed string

ملاحظات

  • يُمكن استعمال الدّالة complex()‎ لتحويل الأعداد إلى أعداد مركّبة كما تُستعمل الدّوال int()‎ و float()‎.

انظر أيضًا

مصادر