تنفذها بايثون بأمانة بترتيبها.
ماذا لو كنت تريد تغيير ترتيب تنفيذ تدفق البيان؟
كما قد تكون خمنت ، يتم تحقيق ذلك من خلال بيانات تدفق التحكم.
هناك ثلاثة أنواع من عبارات التحكم في التدفق في بايثون - if و for و while.
إذا البيان
يتم استخدام عبارة if لاختبار شرط ، إذا كان الشرط صحيحًا (صواب) ، فإننا نقوم بتشغيل كتلة من العبارات (تسمى كتلة if)
وإلا فإننا نعالج كتلة أخرى من العبارات (تسمى else-block). شرط آخر اختياري.
age = 20
if age >18:
print("成年人")
else :
print("未成年")
# "未成年"
في البرنامج ، نحكم على ما إذا كانت قيمة العمر أكبر من 18 ، إذا كانت أكبر من الناتج "بالغ" ، وإلا فإن الناتج "صغير"
يلاحظ:
18 يتبعها نقطتان
يتم وضع مسافة بادئة للطباعة ("بالغ") بمقدار 4 مسافات قبل أن تسمى كتلة if
يمكنك بسهولة فهم عملية تنفيذ البيان الشرطي من خلال الشكل التالي:
استخدام متعددة إذا
في هذا البرنامج ، نحصل على الرقم التخميني من المستخدم ، ثم نتحقق مما إذا كان الرقم هو الرقم الذي لدينا. نقوم بتعيين رقم المتغير على أي عدد صحيح نريده ، في هذه الحالة 28. بعد ذلك ، نستخدم وظيفة الإدخال () للحصول على الرقم الذي يخمنه المستخدم.
قضية
number = 28
guess = int(input('请输入数字:'))
if guess==number:
print('恭喜您猜中了')
print('不是每一次您都能猜中')
elif guess <number:
print('您猜的数有点小了')
else:
print("您猜的大了点")
print("猜数完成")
# 当if条件执行完这句话执行
انتاج:
请输入一个数字:50
您猜的大了点
猜数完成
请输入一个数字:22
您猜的数有点小了
猜数完成
请输入一个数字:28
恭喜您猜中了
不是每一次您都能猜中
猜数完成
لاحظ أن عبارة if تتضمن نقطتين في النهاية - نخبر Python أن هناك كتلة من العبارات تتبعها.
تذكر أن أجزاء elif و else اختيارية.
بعد أن نفذت بايثون تعليمة if كاملة وجمل elif و else المرتبطة بها ، تنتقل إلى العبارة التالية في كتلة تعليمة if. في هذا المثال ، كتلة البيانات هذه هي الكتلة الرئيسية.
يبدأ البرنامج في التنفيذ من الكتلة الرئيسية ، والبيان التالي هو عبارة print (" guess done "). بعد ذلك ، ترى Python نهاية البرنامج وتنهي التشغيل ببساطة.
يمكنك بسهولة فهم عملية تنفيذ البيان الشرطي من خلال الشكل التالي:
تُستخدم العوامل التالية بشكل شائع في الحالات التالية:
المشغل أو العامل | يصف |
---|---|
< |
أقل من |
<= |
اقل او يساوي |
> |
أكثر من |
>= |
أكبر من أو يساوي |
== |
يساوي ، يقارن بين قيمتين للمساواة |
!= |
لا يساوي |
بينما البيان
تسمح لك العبارة while بتنفيذ مجموعة من العبارات بشكل متكرر طالما أن الشرط صحيح. بيان while هو مثال لما يسمى تعليمة حلقة. تحتوي العبارة while على جملة اختيارية .
استخدم حين البيان
while running:
guess = int(input('请输入一个数字 : '))
if guess == number:
print('恭喜你猜到了')
running = False # 让while循环停止
elif guess < number:
print('小了点')
else:
print('大了点')
else:
print('循环结束')
انتاج
请输入一个数字:50
大了点
请输入一个数字:22
小了点
请输入一个数字:28
恭喜你猜到了
循环结束
في هذا البرنامج ، ما زلنا نستخدم لعبة التخمين كمثال ، لكن ميزة هذا المثال هي أنه يمكن للمستخدم الاستمرار في التخمين حتى يخمن بشكل صحيح - بحيث لا تكون هناك حاجة لتكرارها لكل تخمين كما في المثال السابق البرنامج تكرارا. يوضح هذا المثال بشكل مناسب استخدام العبارة while
لقد نقلنا بيانات الإدخال و if داخل حلقة while وقمنا بتعيين متغير التشغيل على True قبل بدء حلقة while. أولاً ، نتحقق مما إذا كان المتغير قيد التشغيل صحيحًا ، ثم ننفذ كتلة while التالية. بعد تنفيذ البرنامج ، تحقق من الشرط مرة أخرى ، وهو في هذه الحالة المتغير قيد التشغيل.
إذا كان هذا صحيحًا ، فإننا ننفذ while-block مرة أخرى ، وإلا فإننا نواصل استخدام else-block الاختياري وننتقل إلى تنفيذ العبارة التالية.
يتم تنفيذ كتلة else فقط عندما يصبح شرط حلقة while Loop False - وقد تكون هذه هي المرة الأولى التي يتم فيها فحص الشرط. إذا كانت حلقة while الخاصة بك تحتوي على عبارة أخرى ، فسيتم تنفيذها دائمًا ما لم تستمر حلقة while إلى الأبد ولن تنتهي أبدًا
تسمى الصواب والخطأ الأنواع المنطقية. يمكنك قراءتها بالتساوي على أنها القيم 1 و 0 ، على التوالي . الأنواع المنطقية مهمة عند اختبار شروط مهمة ، فهي ليست قيمًا حقيقية
تعد كتلة else زائدة عن الحاجة ، لأنه يمكنك وضع العبارات فيها في نفس الكتلة (مثل while) ، بعد العبارة while ، لتحقيق نفس التأثير.
لحلقة
for..in هو عبارة حلقة أخرى تستخدم بشكل متكرر عبر سلسلة من الكائنات كل عنصر في قائمة الانتظار واحدًا تلو الآخر.
استخدم العبارة for
قضية:
for i in range(1, 5):
print(i)
else:
print('循环结束')
انتاج:
1
2
3
4
循环结束
في هذا البرنامج ، نقوم بطباعة سلسلة من الأرقام. نقوم بتوليد هذا التسلسل من الأرقام باستخدام وظيفة النطاق المضمنة.
كل ما نقوم به هو توفير رقمين ، ويعيد النطاق سلسلة من الأرقام. يبدأ التسلسل من الرقم الأول وينتهي بالرقم الثاني. على سبيل المثال ، يعطي النطاق (1،5) التسلسل [1 ، 2 ، 3 ، 4]. بشكل افتراضي ، حجم خطوة النطاق هو 1 . إذا قدمنا رقمًا ثالثًا للنطاق ، فسيكون حجم الخطوة.
على سبيل المثال ، النطاق (1،5،2) يعطي [1،3]. تذكر أن النطاق يمتد حتى الرقم الثاني ، أي أنه لا يحتوي على الرقم الثاني
تتكرر حلقة for على هذا النطاق - لأن i في النطاق (1،5) يكافئ لـ i في [1 ، 2 ، 3 ، 4] ، كما لو أن كل رقم (أو كائن) في التسلسل قد تم تخصيصه لـ i ، واحدًا تلو الآخر ، ثم نفّذ الكتلة لكل قيمة من قيم i. في هذا المثال ، نقوم فقط بطباعة قيمة i.
تذكر أن الجزء الآخر اختياري. إذا تم تضمين الأمر else ، فسيتم تنفيذه دائمًا مرة واحدة بعد انتهاء حلقة for ، ما لم يتم العثور على تعليمة break
بيان كسر
يتم استخدام تعليمة break لإنهاء جملة الحلقة ، أي إيقاف تنفيذ جملة الحلقة حتى إذا لم يُطلق على شرط الحلقة False أو لم يتم تكرار التسلسل بشكل كامل.
ملاحظة مهمة هي أنه إذا قمت بالإنهاء من حلقة for أو while ، فلن يتم تنفيذ أي كتلة حلقة أخرى مقابلة.
قضية:
while True:
s = input('输入字符串 : ')
if s == 'quit':
break
print ('字符串的长度是', len(s))
print '循环结束'
انتاج:
输入字符串 : I
字符串的长度是 1
输入字符串 : Love
字符串的长度是 4
输入字符串 : You
字符串的长度是 3
输入字符串 : quit
循环结束
في هذا البرنامج ، نحصل على مدخلات المستخدم بشكل متكرر ، ثم نطبع طول كل إدخال. نوفر شرطًا خاصًا لإيقاف البرنامج عن طريق التحقق مما إذا كان إدخال المستخدم هو "إنهاء" . أوقف البرنامج بإنهاء الحلقة حتى نهاية البرنامج.
يتم الحصول على طول سلسلة الإدخال من خلال وظيفة لين المدمجة
تواصل البيان
تُستخدم تعليمة Continue لإخبار Python بتخطي العبارات المتبقية في كتلة الحلقة الحالية والمتابعة مع الحلقة التالية.
قضية:
while True:
s = input('输入字符串 : ')
if s == 'quit':
break
if len(s) < 3:
print('太短了')
continue
print('验证通过')
print('循环结束')
# 自此处起继续进行其它任何处理
انتاج:
输入字符串 : I
太短了
输入字符串 : Love
验证通过
输入字符串 : You
验证通过
输入字符串 : quit
循环结束
في هذا البرنامج ، نأخذ مدخلات من المستخدم ، لكننا نعالجها فقط إذا كانت تتكون من 3 أحرف على الأقل. لذلك ، نستخدم وظيفة len المضمنة للحصول على الطول. إذا كان الطول أقل من 3 ، فسنستخدم تعليمة المتابعة لتجاهل العبارات المتبقية في الكتلة . خلاف ذلك ، سيتم تنفيذ التعليمات المتبقية في هذه الحلقة ، ويمكننا القيام بأي معالجة نريدها هنا.
أثناء الرسم التخطيطي للحلقة
برمجة تعلم مجانية بحتة عبر الإنترنت
امسح الرمز لبدء التعلم
كزة النص الأصلي التعلم عبر الإنترنت