اذهب إلى المحتوى
  • 0

برنامج يستقبل نص ويُخرج جميع الأسعار التي تكون بالدولار - بايثون

Alaa Jamal

السؤال

Recommended Posts

  • 0

يمكنك استخدام ال regular expression التالي

'(\$[0-9]+(.[0-9]+)?)'

وسيقوم باستخراج الأعداد التي تتبعها علامة ال $ ليصبح الكود 

import re
text = input()
result = [x[0] for x in re.findall('(\$[0-9]+(\.[0-9]+)?)', text)]

 

تم التعديل في بواسطة عبدالباسط ابراهيم
خطأ إملائي
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

يمكنك أستخدام Regular Expressions (Regex) أو التعبيرات العادية مثال عليه 

import re

pattern = r"Cookie"
sequence = "Cookie"
if re.match(pattern, sequence):
    print("Match!")
else: print("Not a match!")

أن بعض المتغيرات للتعبيرات العادية قد تكون بعض الشيئ غير واضحة و لكن سأرفق هنا صورة لبعض الأشارات و دلالاتها 

 

y8trHna.jpg

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
import re          # regex  استيراد المكتبة 
txt = input()       #  إدخال النص

# $إيجاد كل مايبدأ بالرمز
# وبعده رقم واحد على الأقل
result = re.findall("\$\d+", txt)     

# عرض النتائج
if result:
    for word in result:
        print(word)
else:
    print("No dollars!")

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

الخطأ في برنامج يا @Alaa Jamal هو انه يقوم بإستخراج أي قيمة بعد علامة الدولار، و الصحيح أن يقوم بإستخراج القيم الرقمية فقط بعد العلامة. الأن بعد أن عرفنا الخطأ يمكننا بتعديل برنامج Ali  بشكل بسيط ليخرج كافة الإحتمالات الممكنة من أعداد صحيحة و أرقام كسرية أيضاً:

re.findall(r"\$[+-]? *(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?", "I bought milk for $1.50 only")

حيث أن المدخل هو مثالنا المحتوي على قيمة كسرية و بإستخدام دالة findall و وضع كل الشروط لوجود أرقام صحيحة مثل $59 او ارقام كسرية مثل $0.587 أو $4.4 يمكننا الحصول على الإجابة الصحيحة.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...