تقسيم السلسلة باستخدام محدد سطر جديد مع Python


Answers

data = """a,b,c
d,e,f
g,h,i
j,k,l"""

print(data.split())       # ['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

str.split ، افتراضيًا ، يتم تقسيم كل الأحرف البيضاء. إذا كانت السلسلة الفعلية تحتوي على أي أحرف بيضاء أخرى ، فقد تحتاج إلى استخدامها

print(data.split("\n"))   # ['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

أو كما اقترح @ Ashwini Chaudhary في التعليقات ، يمكنك استخدامها

print(data.splitlines())
Question

أحتاج إلى تحديد السلسلة التي تحتوي على سطر جديد فيه. كيف يمكنني تحقيق ذلك؟ يرجى الرجوع أدناه رمز.

إدخال:

data = """a,b,c
d,e,f
g,h,i
j,k,l"""

الإخراج المطلوب:

['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

لقد جربت الطرق التالية:

1. output = data.split('\n')
2. output = data.split('/n')
3. output = data.rstrip().split('\n')



إذا كنت ترغب في الانقسام فقط بواسطة خطوط جديدة ، فمن الأفضل استخدام splitlines() :

مثال:

>>> data = """a,b,c
... d,e,f
... g,h,i
... j,k,l"""
>>> data
'a,b,c\nd,e,f\ng,h,i\nj,k,l'
>>> data.splitlines()
['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

مع الانقسام () يعمل أيضا:

>>> data = """a,b,c
... d,e,f
... g,h,i
... j,k,l"""
>>> data
'a,b,c\nd,e,f\ng,h,i\nj,k,l'
>>> data.split()
['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

ومع ذلك:

>>> data = """
... a, eqw, qwe
... v, ewr, err
... """
>>> data
'\na, eqw, qwe\nv, ewr, err\n'
>>> data.split()
['a,', 'eqw,', 'qwe', 'v,', 'ewr,', 'err']





Related