从字符串中制作第一行和其他所有内容的列表

最后发布: 2011-06-16 10:47:07


问题

有一个字符串:

str = "first line\n xxxxxxxxxxxxx\n zzzzzzzzzzzzzzz"

我需要获取包含两个元素的列表:第一行和其他所有内容:

list = ['first line\n', ' xxxxxxxxxxxxx\n zzzzzzzzzzzzzzz']

我该怎么做?

python
回答

print str.split('\n', 1)
['first line', ' xxxxxxxxxxxxx\n zzzzzzzzzzzzzzz']

如果要保留第一个元素,则不要使用“ \\ n”:

splited = str.partition('\n') 
print [splited[0] + splited[1], splited[2]]
['first line\n', ' xxxxxxxxxxxxx\n zzzzzzzzzzzzzzz']

并且不要命名您的字符串str因为您将隐藏str类型,也不会列出list :)


回答

>>> str = "first line\n xxxxxxxxxxxxx\n zzzzzzzzzzzzzzz"
>>> str.split('\n', 1)
['first line', ' xxxxxxxxxxxxx\n zzzzzzzzzzzzzzz']


回答

>>> s = "first line\n xxxxxxxxxxxxx\n zzzzzzzzzzzzzzz"
>>> s=s.splitlines(True)
>>> s=[s[0],"".join(s[1:])]
>>> s
['first line\n', ' xxxxxxxxxxxxx\n zzzzzzzzzzzzzzz']

使用“ True”作为分割线的参数表示应“保持结尾”