الفرق بين Input و Raw_input في بايثون

الشيء الذي يقوم معظم المبرمجون بملاحظته بعد الإنتقال من بياثون 2 إلى بايثون 3 ماعدا حقيقة أن Print أصبحت وظيفة هي أن Raw_input إختفت و هذا كود بايثون 2


bottles = raw_input("Daily beer consumption: ")

أما نسخة بايثون 3 فهي كالتالي :

bottles = input("Daily beer consumption: ")

التغيير جاء بسبب أن مطوري بايثون أدركوا أنهم إرتكبوا خطأ فادح في الأيام الأولى ، فإذا كنت تتذكر فإن وظيفة input في نسخة بايثون 2 كانت تستعمل لتكون معادلة لهذا الكود التالي :


bottles = eval(raw_input("Daily beer consumption: "))

وهذا يسمح لك بكل سهولة بكتابة برنامج يستقبل مدخلات من طرف المستخدم وتقييمها بإعتبارها Int أو Float أو مهما كان نوعها وعلى سبيل المثال :


first = input("enter first number: ")
second = input("enter second number: ")
print first + second # طبع الأول + الثاني

من جهة أخرى فإن Raw_input تقوم بعرض السلاسل


first = raw_input("enter first number: ")
second = raw_input("enter second number: ")
print first + second # عرض السلسلتين كسلسلة واحدة

في بايثون 3 تقوم Input بنفس عمل Raw_input الخاصة ببايثون 2 وهذه الأخيرة لم يعد لها وجود في بايثون 3 ، لذلك عليك أن تقوم بفعل شيء من هذا القبيل (نفترض أنك تريد قيم أعداد صحيحة من المستخدم)


first = int(input("enter first number: "))
second = int(input("enter second number: "))
print(first + second)

 

 

أرجوا أن تقوم بدعمنا عبر نشرك والاعجاب بالموقع

2 من التعليقات على موضوع “الفرق بين Input و Raw_input في بايثون

  1. موضوع مفيد جداً، شكراً جزيلاً!

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

Post Navigation