الفرق بين المراجعتين لصفحة: «Python/str/splitlines»
أنشأ الصفحة ب'تقسم الدالة السلسلة النصية إلى قائمة من الأسطر. == البنية العامة == <syntaxhighlight l...' |
لا ملخص تعديل |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:الدالة <code>str.splitlines()</code> في بايثون}}</noinclude> | |||
تقسم الدالة [[Python/str|السلسلة النصية]] إلى [[Python/list|قائمة]] من الأسطر. | تقسم الدالة [[Python/str|السلسلة النصية]] إلى [[Python/list|قائمة]] من الأسطر. | ||
سطر 22: | سطر 23: | ||
|- | |- | ||
|<code>\n</code> | |<code>\n</code> | ||
|فاصل أسطر. | |فاصل أسطر. Line Feed | ||
|- | |- | ||
| | |<code>\r</code> | ||
| | |فاصل أسطر. Carriage Return | ||
|- | |||
|<code>\r\n</code> | |||
|فاصل أسطر. Carriage Return + Line Feed | |||
|- | |||
|<code>\v</code> أو <code>\x0b</code> | |||
|جدولة السطر. Line Tabulation | |||
|- | |||
|<code>\f</code> أو <code>\x0c</code> | |||
|تغذية نموذج. Form Feed | |||
|- | |||
|<code>\x1c</code> | |||
|فاصل ملف. File Separator | |||
|- | |||
|<code>\x1d</code> | |||
|فاصل مجموعة. Group Separator | |||
|- | |||
|<code>\x1e</code> | |||
|فاصل سجلّ. Record Separator | |||
|- | |||
|<code>\x85</code> | |||
|السطر اللاحق. Next Line (C1 Control Code) | |||
|- | |||
|<code>\u2028</code> | |||
|فاصل أسطر. Line Separator | |||
|- | |||
|<code>\u2029</code> | |||
|فاصل فقرة. Paragraph Separator | |||
|- | |- | ||
|} | |} | ||
'''ملاحظة:''' أضيف الفاصلان <code>\v</code> و <code>\f</code> إلى قائمة الحدود الفاصلة في الإصدار 3.2 من اللغة. | '''ملاحظة:''' أضيف الفاصلان <code>\v</code> و <code>\f</code> إلى قائمة الحدود الفاصلة في الإصدار 3.2 من اللغة. | ||
سطر 38: | سطر 64: | ||
>>> 'ab c\n\nde fg\rkl\r\n'.splitlines(keepends=True) | >>> 'ab c\n\nde fg\rkl\r\n'.splitlines(keepends=True) | ||
['ab c\n', '\n', 'de fg\r', 'kl\r\n'] | ['ab c\n', '\n', 'de fg\r', 'kl\r\n'] | ||
</syntaxhighlight>تختلف هذه الدالة عن الدالة <code>split()</code> في أنّها عند تعيين قيمة المعامل <code>sep</code> فإنّها تعيد [[Python/list|قائمة]] فارغة، ولا ينشأ سطر إضافي عند استخدام فاصل الأسطر في نهاية [[Python/str|السلسلة النصية]]:<syntaxhighlight lang="python3"> | </syntaxhighlight>تختلف هذه الدالة عن الدالة <code>[[Python/str/split|split()]]</code> في أنّها عند تعيين قيمة المعامل <code>sep</code> فإنّها تعيد [[Python/list|قائمة]] فارغة، ولا ينشأ سطر إضافي عند استخدام فاصل الأسطر في نهاية [[Python/str|السلسلة النصية]]:<syntaxhighlight lang="python3"> | ||
>>> "".splitlines() | >>> "".splitlines() | ||
[] | [] | ||
>>> "One line\n".splitlines() | >>> "One line\n".splitlines() | ||
['One line'] | ['One line'] | ||
</syntaxhighlight>للمقارنة، تعطي الدالة <code>split()</code> النتائج التالية:<syntaxhighlight lang="python3"> | </syntaxhighlight>للمقارنة، تعطي الدالة <code>[[Python/str/split|split()]]</code> النتائج التالية:<syntaxhighlight lang="python3"> | ||
>>> ''.split('\n') | >>> ''.split('\n') | ||
[''] | [''] | ||
سطر 49: | سطر 75: | ||
['Two lines', ''] | ['Two lines', ''] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== انظر أيضًا == | |||
* [[Python/str/split|الدالة split() في بايثون.]] | |||
* [[Python/str|السلاسل النصية في بايثون.]] | |||
* [[Python/list|القوائم في بايثون.]] | |||
== مصادر == | |||
* [https://docs.python.org/3/library/stdtypes.html#str.istitle قسم istitle في صفحة Types في توثيق بايثون الرسمي.] | |||
[[تصنيف:Python]] | |||
[[تصنيف:Python Function]] | |||
[[تصنيف:Python Built-in Functions]] |
مراجعة 22:42، 8 مايو 2018
تقسم الدالة السلسلة النصية إلى قائمة من الأسطر.
البنية العامة
x.splitlines()
المعاملات
keepends
تُدرج فواصل الأسطر في القائمة المعادة عندما يأخذ هذا المعامل القيمة True
.
القيمة المعادة
تعيد الدالة قائمة من الأسطر التي تكوّن السلسلة النصية، وتجري عملية التقسيم عند حدود الأسطر، ولا تُدرج فواصل الأسطر في القائمة المعادة إلا إذا أخذ المعامل keepends
القيمة True
.
تقسم الدالة السلاسل النصية عند حدود الأسطر التالية:
الفاصل | الوصف |
---|---|
\n
|
فاصل أسطر. Line Feed |
\r
|
فاصل أسطر. Carriage Return |
\r\n
|
فاصل أسطر. Carriage Return + Line Feed |
\v أو \x0b
|
جدولة السطر. Line Tabulation |
\f أو \x0c
|
تغذية نموذج. Form Feed |
\x1c
|
فاصل ملف. File Separator |
\x1d
|
فاصل مجموعة. Group Separator |
\x1e
|
فاصل سجلّ. Record Separator |
\x85
|
السطر اللاحق. Next Line (C1 Control Code) |
\u2028
|
فاصل أسطر. Line Separator |
\u2029
|
فاصل فقرة. Paragraph Separator |
ملاحظة: أضيف الفاصلان \v
و \f
إلى قائمة الحدود الفاصلة في الإصدار 3.2 من اللغة.
أمثلة
يوضّح المثال التالي طريقة تطبيق الدالة على السلاسل النصية:
>>> 'ab c\n\nde fg\rkl\r\n'.splitlines()
['ab c', '', 'de fg', 'kl']
>>> 'ab c\n\nde fg\rkl\r\n'.splitlines(keepends=True)
['ab c\n', '\n', 'de fg\r', 'kl\r\n']
تختلف هذه الدالة عن الدالة split()
في أنّها عند تعيين قيمة المعامل sep
فإنّها تعيد قائمة فارغة، ولا ينشأ سطر إضافي عند استخدام فاصل الأسطر في نهاية السلسلة النصية:
>>> "".splitlines()
[]
>>> "One line\n".splitlines()
['One line']
للمقارنة، تعطي الدالة split()
النتائج التالية:
>>> ''.split('\n')
['']
>>> 'Two lines\n'.split('\n')
['Two lines', '']