عبارة (علم الحاسوب)  في برمجة الكمبيوتر، تعد العبارة وحدة نحوية للغة برمجة أمرية تعبر عن بعض الإجراءات التي يتعين تنفيذها. يتم تكوين برنامج مكتوب بهذه اللغة من خلال سلسلة من عبارة واحدة أو أكثر. قد تحتوي العبارة على مكونات داخلية (مثل التعبيرات).  العديد من اللغات الأمرية (مثل C) يميز بين العبارات والتعاريف، مع عبارة تحتوي فقط على كود قابل للتنفيذ وتعريف يمثل معرفًا، بينما يتم تقييم التعبير إلى قيمة فقط. يمكن أيضًا التمييز بين العبارات البسيطة والمركبة؛ قد يحتوي الأخير على عبارات كمكونات.  فيما يلي بعض أنواع العبارات العامة الرئيسية، كود وهمي. هذه العبارات الكاذبة لها بناء عبارة المقابلة في أي لغة أمرية نموذجية مثل باسكال، سي، فورتران إلخ:   codice_11 codice_12 codice_13 codice_14 codice_15 codice_16  مظهر العبارات يشكل شكل البرامج. تتميز لغات البرمجة بنوع العبارات التي تستخدمها (على سبيل المثال عائلة لغة الأقواس المعقوفة family). يتم تقديم العديد من العبارات بواسطة معرفات مثل "if"، "while" أو repeat. غالبًا ما يتم حجز الكلمات الرئيسية للعبارات بحيث لا يمكن استخدامها كأسماء للمتغيرات أو الوظائف (الدوال). تستخدم اللغات الأمرية عادةً نحواً خاصًا لكل عبارة، والتي تبدو مختلفة تمامًا عن استدعاءات الدوال. من الطرق الشائعة لوصف صياغة الجمل هي صيغة باكوس نور والرسوم البيانية لبناء الجملة ( ).  تختلف الكثير من العبارات دلالياً عن استدعاء روتين فرعي من خلال معالجتها للمعلمات. عادة يتم تقييم معلمة روتين فرعي الفعلي مرة واحدة قبل استدعاء روتين فرعي. هذا يتناقض مع العديد من معلمات العبارة التي يمكن تقييمها عدة مرات (على سبيل المثال حالة حلقة while طالما) أو لا يتم على الإطلاق (على سبيل المثال جسم حلقة loop body حلقة while طالما). تقنياً مثل هذه المعلمات للعبارة هي معلمات الاستدعاء بالاسم . يتم تقييم معلمات عند الحاجة (انظر أيضًا التقييم البطيء). عند توفر معلمات الاستدعاء بالاسم، يمكن تنفيذ عبارة مثل السلوك باستخدام روتين فرعي (انظر Lisp). بالنسبة للغات التي لا تحتوي على معلمات بالاسم، فإن الوصف الدلالي للحلقة أو الوصف الدلالي الشرطي يتجاوز عادةً قدرات اللغة. لذلك، تشير المستندات القياسية غالبًا إلى الأوصاف الدلالية في اللغة الطبيعية.  في معظم اللغات، تتعارض العبارات مع التعبيرات () الموجودة في تلك العبارات التي لا تؤدي إلى نتائج ويتم تنفيذها فقط من أجل آثارها الجانبية، بينما تعيد التعبيرات دائمًا نتيجة ولا تكون لها آثار جانبية على الإطلاق.  فمثلا:   من بين لغات البرمجة الأمرية، تعد Algol 68 واحدة من اللغات القليلة التي يمكن أن تعيد (return) فيها العبارة نتيجة. في اللغات التي تمزج بين الدوال (الوظائف) الأمرية والوظيفية، مثل عائلة Lisp، لا يتم التمييز بين التعبيرات والعبارات: حتى التعبيرات التي يتم تنفيذها في سياقات متسلسلة فقط من أجل آثارها الجانبية والتي لا تُستخدم قيم الإرجاع تُعتبر «تعبيرات». في البرمجة الوظيفية البحتة ()، لا توجد عبارات؛ كل شيء هو تعبير.  كثيرا ما يلاحظ هذا التمييز في الصياغة : يتم "تنفيذ" عبارة ("executed")، طالما يتم "تقييم" تعبير . يوجد هذا في دوال codice_19 و codice_20 و (codice_19and codice_22 functions) في بعض اللغات: في بايثون توجد على حد سواء، مع codice_19 تطبيقها على بيانات و codice_20 تطبيقها على التعبيرات.العبارة هي تعليمات يمكن لمترجم بايثون تنفيذها. لقد رأينا فقط العبارة المهمة حتى الآن. بعض أنواع العبارات الأخرى التي سنراها بعد قليل هي عبارات طالما while، عبارات لأجل for، عبارة إذا if، عبارة استيراد Import. (هناك أنواع أخرى أيضًا!)  التعبير هو مزيج من القيم والمتغيرات والعوامل واستدعاءات الدوال . التعبيرات تحتاج إلى تقييم . إذا طلبت من بايثون طباعة تعبير، يقوم المفسّر بتقييم التعبير ويعرض النتيجة.  تحتوي معظم اللغات على مجموعة ثابتة من العبارات المحددة بواسطة اللغة، ولكن كانت هناك التجارب بلغات قابلة للتوسيع () تسمح للمبرمج بتعريف عبارات جديدة.