如何将一个字符串(在自己的行中充满单词)转换为数组?

时间:2016-11-04 10:40:33

标签: python arrays string list words

我有一个充满了很多单词的字符串,每行一个,就像这样:

CAT
DOG
BIRD

如何将其转换为数组,其中所有单词之前和之后都用空格分隔,如下所示;

[ CAT , DOG , BIRD ]

我需要将其用作列表。

6 个答案:

答案 0 :(得分:1)

只需使用split()splitlines()分隔每一行:

>>> s = '''CAT
... DOG
... BIRD'''
>>> s.split()
['CAT', 'DOG', 'BIRD']
>>> s.splitlines()
['CAT', 'DOG', 'BIRD']

答案 1 :(得分:0)

s = 'CAT\nBIRD\nDOG'
s_array = s.split('\n')

print s_array
>> ['CAT', 'BIRD', 'DOG']

答案 2 :(得分:0)

split()并在两端添加空格。

s = '''CAT 
DOG 
BIRD'''

print [' '+i+' ' for i in s.split()]
[' CAT ', ' DOG ', ' BIRD ']

答案 3 :(得分:0)

你的字符串是这样的

CAT
DOG
BIRD

在python中你的字符串就像" CAT \ nDOG \ nBIRD"

所以为了使这个列表简单地按行拆分:

string = "CAT\nDOG\nBIRD"
list = string.split("\n")

注意:我也喜欢splitlines()正如TigerHawk所说

答案 4 :(得分:0)

str.split

line = "CAT DOG BIRD"
words = []

words.append(line.split())

输出:

>>> words
[['cat', 'dog', 'bird']]

答案 5 :(得分:0)

正如其他人在分裂后提到的那样,你得到一个数组

s = 'CAT\nBIRD\nDOG'
s_array = s.split('\n')

所以,

s_array=['CAT','BIRD','DOG']

spaced_s_array=map(lambda x: ' ' + x+ ' ',s_array)
>>> spaced_s_array
[' CAT ', ' BIRD ', ' DOG ']

将lambda函数应用于s_array中的每个元素后给出spaced_s_array