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

تحويل قائمة مكونه من كلمات الى نص في بايثون

ريم معلا

السؤال

Recommended Posts

  • 2

يمكنك ذلك بعدة طرق أسهلها استخدام الدالة join كالتالي:

def convert(lst): 
    return (" ".join(lst))
# اختبار التابع 
l = ['Hsoub', 'Mostaql']
print(convert(l)) # Output: Hsoub Mostaql

حيث " " هي التي ستفصل بين الكلمات ويمكنك تغييرها. 
#تعديل: طريقة أخرى إذا أحببت بدون توابع جاهزة:

# تابع التحويل
def convert(lst):
    string=lst[0]   # نضع أول كلمة من القائمة في السلسة 
    for word in lst[1:]: # نضيف باقي الكلمات إلى السلسلة 
        string +=' '+ word  
    return string
# اختبار التابع 
l = ['Hsoub', 'Mostaql']
print(convert(l))

 

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

  • 0

بداية نعرف متغير فارغ, يمكننا فعل ذلك من خلال المرور على جميع الكلمات في القائمة وذلك باستخدام حلقة تكرار, في جسم حلقة التكرار نقوم باضافة الكلمة الى المتغير الفارغ فيكون شكل الكود كالتالي

s= ['نص', 'فقط', 'للتجربة']#القائنة التي بها الكلمات
myString = "" #المتغير الفارغ
for word in s: #حلقة التكرار
    myString += word+" "#جسم حلقة التكرار حيث نقوم باضافة كل كلمة الى المتغير
print(myString) #طباعة المتغير

 

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

  • 0

لكن ماذا سيحدث إن كانت الكلمات تحتوي على أرقام؟ يمكننا تفادي الأخطاء الناتجة عن وجود أرقام بتحويل القيم أولاً إلى نص str و من ثم تطبيق نستخدم join مثل حل Ali أو ان نقوم بإستخدام طريقة الدمج كما وضح محمد، يمكنك أيضاً مراجعة الحل التالي بإستخدام join مع طريقة list comprehension:

listToStr = ' '.join([str(elem) for elem in s])

لاحظ أننا في هذه الطريقة قمنا بتحويل كل كلمة أو رقم لقيمة نصية أولاً و من ثم طبقنا عملية الدمج، يمكننا ايضاً تحويل القيم إلى نصية عن طريق إستخدام map كالتالي:

listToStr = ' '.join(map(str, s))

والان إن قمنا بتطبيق هذه الدوال على المثال: s = ['I', 'was', 'born', 'in', 2020]

سنحصل على I was born in 2020

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

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...