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