Python:如何使用子字符串将字符串添加到列表中?

Python:如何使用子字符串将字符串添加到列表中?,python,Python,例如,我有一个像这样的字符串 StringA = "a city a street a room a bed" 我想使用子字符串“a”剪切此字符串,并从中创建一个列表。所以结果看起来像 ListA = ["city ", "street " ,"room " ,"bed"] 如果还有空的地方就可以了。我该怎么做?谢谢 您可以使用split: list_a = string_a.split('a ') 您可以使用拆分: list_a = string_a.split('a ') 您可以在一

例如,我有一个像这样的字符串

StringA = "a city a street a room a bed"
我想使用子字符串
“a”
剪切此字符串,并从中创建一个
列表。所以结果看起来像

ListA = ["city ", "street " ,"room " ,"bed"]

如果还有空的地方就可以了。我该怎么做?谢谢

您可以使用
split

list_a = string_a.split('a ')

您可以使用
拆分

list_a = string_a.split('a ')

您可以在一行中完成:

filter(len, "a city a street a room a bed".split("a "))

您可以在一行中完成:

filter(len, "a city a street a room a bed".split("a "))
这也应该起作用:

ListA = StringA.split("a ")[1:]
添加了split语句之后的[1:],因为第一个“a”(即“”)之前的部分将被视为ListA的第一个元素,您不希望这样

您的输出将与您想要的完全相同:

ListA = ['city ', 'street ', 'room ', 'bed']
这也应该起作用:

ListA = StringA.split("a ")[1:]
添加了split语句之后的[1:],因为第一个“a”(即“”)之前的部分将被视为ListA的第一个元素,您不希望这样

您的输出将与您想要的完全相同:

ListA = ['city ', 'street ', 'room ', 'bed']

这将从字符串生成列表:

re.split(r'\s*\ba\b\s*', a)
输出应该如下所示:

['', 'city', 'cola', 'room', 'bed']
所以,要从列表中删除空字符串,可以使用:

[item for item in re.split(r'\s*\ba\b\s*', a) if item]
这将产生:

['city', 'cola', 'room', 'bed']

这将从字符串生成列表:

re.split(r'\s*\ba\b\s*', a)
输出应该如下所示:

['', 'city', 'cola', 'room', 'bed']
所以,要从列表中删除空字符串,可以使用:

[item for item in re.split(r'\s*\ba\b\s*', a) if item]
这将产生:

['city', 'cola', 'room', 'bed']

filter()
将返回
filter
对象。它返回一个列表好吧,对不起,对于python 2,对于python 3
filter()
将返回
filter
对象。它返回一个列表好吧,对不起,对于python 2,对于python 3,如果
StringA=“a cola a street a room a bed”
失败,如果
StringA=“可乐一条街一个房间一张床”
注意,如果你有一个字符串包含一个以
a
结尾的单词,那么所有给出的答案都不起作用,就像
a可乐一样。注意,如果你有一个字符串包含一个以
a
结尾的单词,那么所有给出的答案都不起作用,就像
a可乐