分割逗号分隔的字符串以在Python列表中分隔字符串

时间:2019-02-19 20:17:14

标签: python python-3.x string split string-formatting

我有一个这样的输入字符串:

pentavac-xim, revaxis, tetravac-xim
imovax polio, pediacel
act-hib, rage diploide
imogam rage pa, imovax polio
dt vax, tetavax

我希望输出字符串显示为:

['pentavac-xim', 'revaxis', 'tetravac-xim']
['imovax polio', 'pediacel']
['act-hib', 'rage diploide']
['imogam rage pa', 'imovax polio']
['dt vax', 'tetavax']

问题是,当我在输入字符串上使用split时,对于应视为单个字符串的产品,将其转换为2个单独的字符串,例如:

imogam rage pa = ['imogam','rage','pa']不正确。它应该是 : ['imogam rage pa']。如何解决这个问题

4 个答案:

答案 0 :(得分:4)

使用逗号分隔就可以了。这应该可以正常工作:

some_string = "imogam rage pa, imovax polio"
print(some_string.split(', '))

输出:

['imogam rage pa', 'imovax polio']

答案 1 :(得分:3)

如果不带任何参数使用.split(),它将使用空格字符分割。您需要指定要分割的字符。 对于您的示例,您需要像这样用逗号分隔

s = "imogam rage pa, imovax polio"
print(s.split(', '))
['imogam rage pa', 'imovax polio']

答案 2 :(得分:3)

使用split函数将整个字符串分成子字符串。另外,我正在使用lstrip函数,该函数从子字符串中删除前导空格。

代码:

string = 'pentavac-xim, revaxis, tetravac-xim'
value = input_string.split(',')
result = [i.lstrip() for i in output]
print(result)

输出:

['pentavac-xim', 'revaxis', 'tetravac-xim'] 

答案 3 :(得分:2)

您可以尝试以下方法:

input_string = 'pentavac-xim, revaxis, tetravac-xim'
output = input_string.split(', ')
print(output)
  

输出:['pentavac-xim','recaxis','tetravac-xim']