将字符串转换为python中的行列表

时间:2014-03-06 18:38:51

标签: python

示例:

string = """i like to program
i need attention
12345 67890
abcdefghijkl mnopqrstuvwxyz"""
string = function(string)
print(string)
  
    

[“我喜欢编程”,“我需要注意”,“12345 67890”,“abcdefghijkl mnopqrstuvwxyz”]

  

注意,我知道split()函数,我只想知道是否有任何函数只分割行而不是空格。

3 个答案:

答案 0 :(得分:2)

正如 @iCodez 建议的那样,最好使用str.splitlines

乍一看,这看起来与执行split('\n')相同,他们有不同的行为

python上的

\n代表一个换行符,独立于运行它的平台。但是,this representation is platform-dependent。在Windows上,\n是两个字符CRLF(ASCII十进制代码13和10),而在任何现代unix(包括OS X)上,它都是单个字符{{1 }}

例如,

LF即使您的字符串结尾与您的平台不匹配,也能正常工作:

print

但是,显式拆分“\ n”将产生与平台相关的行为:

>>> print "a\x0ab\x0d\x0ac"
a
b
c

出于这个原因,最好使用>>> "a\x0ab\x0d\x0ac".split("\n") ['a', 'b\r', 'c']

splitlines

答案 1 :(得分:1)

您可以使用str.splitlines

>>> string = """i like to program
... i need attention
... 12345 67890
... abcdefghijkl mnopqrstuvwxyz"""
>>> string.splitlines()
['i like to program', 'i need attention', '12345 67890', 'abcdefghijkl mnopqrstuvwxyz']
>>>

答案 2 :(得分:0)

string.split('\n')就足够了。或明确string.splitlines