ماذا | تعني علامة في بيثون ""؟
-
03-07-2019 - |
سؤال
هذا السؤال أصلا طلب (خطأ) ما يفعل "|" يعني في بيثون، عندما كان السؤال الفعلي حول جانغو. كان هذا السؤال إجابة رائعة من ثلاثية أريد أن الحفاظ عليها.
المحلول
في بيثون، يتم تعريف المشغل '|'
افتراضيا على أنواع صحيحة وتعيين أنواع.
إذا المعاملات هما الأعداد الصحيحة، بعد ذلك سوف إجراء أحادي المعامل أو ، التي هو عملية حسابية.
إذا المعاملات هما أنواع set
، فإن المشغل '|'
عودة اتحاد مجموعتين.
a = set([1,2,3])
b = set([2,3,4])
c = a|b # = set([1,2,3,4])
وبالإضافة إلى ذلك، والمؤلفين قد تحدد السلوك مشغل لأنواع مخصصة، حتى إذا something.property
هو كائن المعرفة من قبل المستخدم، يجب عليك التحقق من أن تعريف الفئة لطريقة __or__()
، والتي سوف تحدد السلوك في نموذج التعليمات البرمجية الخاصة بك.
وهكذا، فإنه من المستحيل أن أعطيك إجابة دقيقة دون معرفة أنواع البيانات عن المعاملات اثنين، ولكن عادة م> سيكون أحادي المعامل أو.
نصائح أخرى
والمختصة بالبت OR
وكان من الممكن أيضا أن تكون "خداع" في أنبوب مثل في شل يونكس، انظر هنا HTTP : //code.google.com/p/python-pipeline/