Python 代碼閱讀合集介紹:為什么不推薦Python初學者直接看項目源碼
本篇閱讀的代碼將多行字符串拆分成列表,各行字符串為列表元素。
本篇閱讀的代碼片段來自於30-seconds-of-python。
split_lines
def split_lines(s):
return s.split('\n')
# EXAMPLES
split_lines('This\nis a\nmultiline\nstring.\n') # ['This', 'is a', 'multiline', 'string.' , '']
split_lines
函數接收一個字符串,並將該字符串以換行符號(\n
)作為分隔符,分割成一個列表。函數直接使用了str.split
函數進行字符串處理。之前的幾篇文章里面的代碼使用了不傳入參數的,按空白字符串分割的特殊用法,這次代碼中指定了按照換行符進行分割。
str.split(sep=None, maxsplit=-1)
返回一個由字符串內單詞組成的列表,使用sep
作為分隔字符串。 如果給出了maxsplit
,則最多進行maxsplit
次拆分(因此,列表最多會有maxsplit+1
個元素)。 如果maxsplit
未指定或為-1
,則不限制拆分次數(進行所有可能的拆分)。
如果sep
未指定或為None
,則會應用另一種拆分算法:連續的空格會被視為單個分隔符,開頭和結尾如果包含空格的話,將不會拆分出空字符串。 因此,使用None
拆分空字符串或僅包含空格的字符串將返回 []
。
>>> '1 2 3'.split()
['1', '2', '3']
>>> '1 2 3'.split(maxsplit=1)
['1', '2 3']
>>> ' 1 2 3 '.split()
['1', '2', '3']