الانتقال إلى المحتوى الرئيسي

كيفية إزالة الأقواس من القائمة في بايثون: حل المشكلة

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

أسهل طريقة لإزالة الأقواس من القائمة هي استخدام طريقة الانضمام (). تسمح لك هذه الطريقة بدمج عناصر القائمة في سطر واحد باستخدام فاصل محدد. يمكنك تحديد سلسلة فارغة كفاصل ، وبالتالي إزالة الأقواس من السلسلة النهائية. هذا النهج مفيد بشكل خاص عندما يتم تخزين السلاسل أو الأرقام في القائمة ، لأن طريقة الانضمام() تعمل فقط مع عناصر من نوع ستر.

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

كما ترى ، يمكن أن تكون إزالة الأقواس من القائمة في بايثون سهلة إذا كنت تستخدم طرق الانضمام() والخريطة() معا. تسمح لك هذه الطرق بتحويل قائمة إلى سلسلة أو إجراء المعالجة اللازمة لعناصر القائمة قبل الدمج. نأمل أن تساعد هذه المقالة في حل مشكلتك وتعلم تقنيات جديدة للعمل مع القوائم في بايثون.

  1. إزالة الأقواس باستخدام المولدات
  2. إزالة الأقواس باستخدام وظيفة الخريطة
  3. التخلص من الأقواس مع حلقة
  4. تقسيم القائمة إلى عناصر بدون أقواس
  5. باستخدام طريقة الانضمام لإزالة الأقواس
  6. إزالة الأقواس باستخدام التعبيرات العادية
  7. وظيفة لإزالة الأقواس من القائمة
  8. سؤال وجواب
  9. كيف يمكنني إزالة الأقواس من قائمة في بيثون?
  10. هل من الممكن لإزالة الأقواس من قائمة في بيثون دون استخدام أساليب سلسلة?
  11. كيف يمكنني إزالة فقط الأقواس الأولى والأخيرة من القائمة في بيثون?
  12. كيف يمكنني إزالة الأقواس المربعة من قائمة في بيثون?
  13. كيف يمكنني إزالة كافة الأقواس من قائمة في بيثون إذا كانت القائمة تحتوي على قوائم متداخلة?
  14. هل من الممكن إزالة الأقواس من قائمة في بايثون دون إنشاء قائمة جديدة?

إزالة الأقواس باستخدام المولدات

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

لإزالة الأقواس باستخدام المولدات ، يمكنك استخدام التعليمات البرمجية التالية:

  1. قم بإنشاء مولد يمر عبر كل عنصر من عناصر القائمة.
  2. تحقق مما إذا كان العنصر الحالي عبارة عن مجموعة (تحتوي على أقواس).
  3. إذا كان العنصر الحالي عبارة عن مجموعة ، فقم بإرجاع العنصر الأول.
  4. إذا لم يكن العنصر الحالي مجموعة ، فأعده دون تغيير.

قد يبدو رمز إزالة الأقواس باستخدام المولدات كما يلي:

ديف ريموفيبراكيتس(لست):

للبند في ضريبة القيمة المضافة:

إذا إيسينستانس (البند ، توبل):

العائد البند [0]

آخر:

عنصر العائد

النتيجة = قائمة (إزالة الأقواس(لست))

يقوم هذا الرمز بإنشاء مولد ريموف_براكيتس الذي يمر عبر كل عنصر من عناصر قائمة لست ويتحقق مما إذا كان العنصر الحالي هو مجموعة (يحتوي على أقواس). إذا كان العنصر عبارة عن مجموعة ، يقوم المولد بإرجاع عنصره الأول. إذا لم يكن العنصر عبارة عن مجموعة ، فإن المولد يعيدها دون تغيير.

للحصول على النتيجة في شكل قائمة ، يمكنك استخدام وظيفة القائمة() عن طريق تمرير المولد كوسيطة.

وبالتالي ، باستخدام المولدات ، يمكنك بسهولة وفعالية إزالة الأقواس من القائمة في بايثون. هذه الطريقة ملائمة بشكل خاص إذا كانت القائمة تحتوي على عدد كبير من العناصر ، لأن المولدات تسمح لك بتجنب إنشاء هياكل بيانات مؤقتة وتخزينها.

إزالة الأقواس باستخدام وظيفة الخريطة

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

بادئ ذي بدء ، دعنا نحدد وظيفة من شأنها إزالة الأقواس:

"'بايثون

ديف ريموفيبراكيتس (البند):

عودة البند.قطاع (' ()')

«`

يزيل الأقواس من طرفي السلسلة.

لتطبيق هذه الوظيفة على جميع عناصر القائمة:

"'بايثون

العناصر = ['(تفاحة)' ، ' (موز)' ،' (كرز)']

العناصر الجديدة = قائمة (خريطة (إزالة الأقواس ، العناصر))

"`

، حيث تتم إزالة الأقواس:

  • أبل
  • الموز
  • الكرز

يسمح لك بإزالة الأقواس بإيجاز وفعالية من قائمة في بايثون.

التخلص من الأقواس مع حلقة

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

  1. قم بإنشاء قائمة فارغة جديدة تحتوي على عناصر بدون أقواس.
  2. استخدم الحلقة للتكرار من خلال كل عنصر في القائمة الأصلية.
  3. داخل الحلقة ، قم بإزالة الأقواس من العنصر الحالي وأضفها إلى القائمة الجديدة.

يوجد أدناه نموذج رمز يوضح هذه العملية:

# قائمة المصدر مع العناصر بين قوسين

قائمة المصادر = ['(العنصر 1)' ، '(العنصر 2) ' ، ' (العنصر 3)']

# إنشاء قائمة فارغة جديدة

من القوائم الجديدة = []

# حلقة لمعالجة العناصر

للعنصر في القائمة الأصلية:

# قم بإزالة الأقواس من العنصر وأضفها إلى القائمة الجديدة

عنصر جديد = عنصر.قطاع (' ()')

قائمة جديدة.إلحاق (جديد_عنصر)

# إخراج النتيجة

طباعة (قائمة جديدة)

سيؤدي هذا الرمز إلى إخراج النتيجة التالية:

['العنصر 1' ، 'العنصر 2' ، 'العنصر 3']

الآن لديك قائمة جديدة تفتقر إلى الأقواس. يمكنك استخدام هذه القائمة لمزيد من معالجة البيانات في البرنامج الخاص بك.

تقسيم القائمة إلى عناصر بدون أقواس

عندما يكون لدينا قائمة في بايثون ونريد إخراج عناصرها بدون أقواس ، يمكننا استخدام طرق مختلفة للعمل مع القوائم.

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

مثال:

"'بايثون

قائمتي = ['التفاح' ، 'الموز' ، 'الكرز']

للعنصر في قائمتي:

طباعة (البند)

«`

سيعرض هذا كل عنصر قائمة في سطر منفصل بدون أقواس مربعة:

أبل

الموز

الكرز

طريقة أخرى هي استخدام الطريقة.انضم () لدمج عناصر القائمة في سلسلة ثم إخراج تلك السلسلة بدون أقواس:

مثال:

"'بايثون

قائمتي = ['التفاح' ، 'الموز' ، 'الكرز']

النتيجة =''.انضم(قائمتي)

طباعة (نتيجة)

"`

سيؤدي هذا إلى إخراج جميع العناصر الموجودة في القائمة كسطر واحد مفصولة بمسافات:

التفاح والموز والكرز

يمكننا أيضا استخدام طريقة شارع () لتحويل كل عنصر قائمة إلى سلسلة قبل استخدام الأسلوب.انضم():

مثال:

"'بايثون

قائمتي = ['التفاح' ، 'الموز' ، 'الكرز']

النتيجة =''.انضم(شارع (عنصر) للعنصر في قائمتي)

طباعة (نتيجة)

"`

سيعرض هذا جميع العناصر الموجودة في القائمة كسطر واحد مفصولة بمسافات:

التفاح والموز والكرز

وهكذا ، وذلك باستخدام لحلقة أو طريقة.انضم () يمكننا بسهولة تقسيم القائمة إلى عناصرها بدون أقواس.

باستخدام طريقة الانضمام لإزالة الأقواس

إذا كنت بحاجة إلى إزالة الأقواس من القائمة في بايثون ، يمكنك استخدام طريقة الانضمام (). تقوم هذه الطريقة بتحويل القائمة إلى سلسلة عن طريق دمج عناصر القائمة باستخدام الفاصل المحدد. في حالتنا ، سيكون الفاصل عبارة عن سلسلة فارغة ، والتي ستزيل الأقواس من السلسلة النهائية.

في ما يلي مثال على التعليمات البرمجية يوضح استخدام طريقة الانضمام () لإزالة الأقواس من قائمة في بايثون:

قائمتي = ['التفاح' ، 'الموز' ، 'الكرز']

النتيجة =".انضم(قائمتي)

طباعة (نتيجة)

إخراج البرنامج:

أبلباناناشيري

شرح الكود:

  1. إنشاء قائمة بلدي مع عناصر "التفاح" ، "الموز" ، "الكرز".
  2. نستخدم طريقة الانضمام () لدمج عناصر القائمة في صف واحد. يتم استخدام سلسلة فارغة كفاصل لإزالة الأقواس.
  3. نقوم بتعيين النتيجة لمتغير النتيجة.
  4. نستخدم وظيفة الطباعة () لطباعة السطر الأخير.

وبالتالي ، فإن استخدام طريقة الانضمام () يجعل من السهل إزالة الأقواس من القائمة في بايثون.

إزالة الأقواس باستخدام التعبيرات العادية

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

التعبيرات العادية هي سلسلة من الأحرف المستخدمة للبحث عن النص ومعالجته. أنها توفر ميزات قوية للعمل مع القوالب.

لإزالة الأقواس من القائمة باستخدام التعبيرات العادية ، يمكنك استخدام إعادة.الفرعية () طريقة. تحل هذه الطريقة محل جميع تطابقات النمط مع السلسلة المحددة.

في ما يلي مثال على رمز يوضح إزالة الأقواس باستخدام التعبيرات العادية:

استيراد إعادة

# القائمة الأصلية مع الأقواس

القائمة الأصلية = ['البند 1' ، '(البند 2)' ، 'البند 3' ، ' (البند 4)']

# التعبير العادي للبحث عن الأقواس

نمط = ص'\((.*?)\)'

# استبدال الأقواس بسلسلة فارغة

قائمة التحديث = [إعادة.فرعي (نمط ، " ، عنصر) للعنصر في القائمة الأصلية]

طباعة (قائمة محدثة)

نتيجة لتنفيذ هذا الرمز ، سيتم إخراج قائمة بدون أقواس:

  • البند 1
  • البند 2
  • البند 3
  • البند 4

في هذا المثال ، استخدمنا التعبير العادي ص'\((.*?)\) '،الذي يبحث عن كل شيء بين الأقواس. ثم استخدمنا إعادة.طريقة فرعية () لاستبدال التطابقات التي تم العثور عليها بسلسلة فارغة.

وبالتالي ، فإن إزالة الأقواس من القائمة باستخدام التعبيرات العادية هي طريقة ملائمة وفعالة لحل هذه المشكلة في لغة برمجة بايثون.

وظيفة لإزالة الأقواس من القائمة

المشكلة:

في بعض الأحيان ، عند العمل مع البيانات في بايثون ، يصبح من الضروري إزالة الأقواس من القائمة. على سبيل المثال ، عند استرداد البيانات من ملف أو قاعدة بيانات ، يمكن تمثيل القائمة كسلسلة بعناصر مفصولة بفواصل ومحاطة بأقواس مربعة.

مثال: "[1, 2, 3, 4]"

مقرر:

.

الخطوات:

  1. .
  2. .
  3. لإزالة الأقواس من كل عنصر قائمة.
  4. .

مثال على التنفيذ:

"'بايثون

ديف ريموفبراكيتس (سلسلة):

# تحويل سلسلة إلى قائمة باستخدام التقييم()

لست = التقييم(سلسلة)

# تحويل كل عنصر قائمة إلى سلسلة

لست = [ستر (عنصر) للعنصر في لست]

# إزالة الأقواس من كل عنصر قائمة باستخدام شارع.يستعاض()

لست = [عنصر.يستعاض عن (' ['،").يستعاض عن (']'،") بالعنصر الوارد في قانون العمل]

# تحويل القائمة مرة أخرى إلى سلسلة باستخدام شارع.انضم()

النتيجة ='،'.تاريخ (لست)

نتيجة الإرجاع

"`

مثال على استخدام الوظيفة:

"'بايثون

سلسلة = "[1, 2, 3, 4]"

النتيجة = إزالة الأقواس(سلسلة)

طباعة (النتيجة) # الإخراج: "1, 2, 3, 4"

"`

يسمح لك بإزالة الأقواس من قائمة في بايثون عن طريق تحويل سلسلة إلى قائمة ، وإزالة الأقواس من كل عنصر وتحويل القائمة مرة أخرى إلى سلسلة.

سؤال وجواب

كيف يمكنني إزالة الأقواس من قائمة في بيثون?

هناك عدة طرق لإزالة الأقواس من قائمة في بايثون. على سبيل المثال ، يمكنك استخدام طريقة القائمة "الانضمام" لتحويل القائمة إلى سلسلة ثم إزالة الأقواس باستخدام طرق معالجة السلسلة مثل طريقة "استبدال".

هل من الممكن لإزالة الأقواس من قائمة في بيثون دون استخدام أساليب سلسلة?

نعم ، هناك طرق أخرى لإزالة الأقواس من قائمة في بايثون لا تتعلق باستخدام طرق السلسلة. على سبيل المثال ، يمكنك استخدام مولد قائمة لإنشاء قائمة جديدة بدون أقواس.

كيف يمكنني إزالة فقط الأقواس الأولى والأخيرة من القائمة في بيثون?

لإزالة الأقواس الأولى والأخيرة فقط من القائمة في بايثون ، يمكنك استخدام الشرائح. باستخدام الشرائح ، يمكنك تحديد جزء من القائمة بدون العنصر الأول والأخير ، والحصول على قائمة جديدة بدون هذه الأقواس.

كيف يمكنني إزالة الأقواس المربعة من قائمة في بيثون?

لإزالة الأقواس المربعة من القائمة في بايثون ، يمكنك أيضا استخدام طريقة "الانضمام" وطرق العمل مع السلاسل. يمكنك أيضا استخدام مولد القائمة لإنشاء قائمة جديدة بدون أقواس.

كيف يمكنني إزالة كافة الأقواس من قائمة في بيثون إذا كانت القائمة تحتوي على قوائم متداخلة?

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

هل من الممكن إزالة الأقواس من قائمة في بايثون دون إنشاء قائمة جديدة?

نعم ، من الممكن إزالة الأقواس من قائمة في بايثون دون إنشاء قائمة جديدة. للقيام بذلك ، يمكنك تغيير القائمة الحالية عن طريق إزالة الأقواس من عناصرها. يمكنك استخدام ل حلقة للذهاب من خلال جميع عناصر القائمة وإزالة الأقواس.