-1

也许这是重复的,但我没有找到答案。
我如何设法在每个逗号之后分割一个长字符串,它变成这样的列表

st=  input("Enter string:").slice(',')

我输入一个像“Jezus, Santa Maria, Program , Hangover”这样的字符串,
我想把它切片['Jezus','Santa Maria','Program','Hangover']
,然后st[1]用作 Santa Maria,但是当我尝试打印st[1]它时,它只出现'e',
我希望它出现在 Santa Maria。有什么帮助吗?使用 python 3.3 Windows

4

3 回答 3

1

使用split

>>> "Jezus, Santa Maria, Program , Hangover".split(', ')
['Jezus', 'Santa Maria', 'Program ', 'Hangover']

请注意,您的单词不仅用逗号分隔,还用带空格的逗号分隔。

于 2013-03-09T19:14:54.637 回答
0

在 Python 中, slice 不是str对象的方法。您应该使用str.split。在旁注中,请不要将变量命名为内置或标准库。

string=  input("Enter string:").slice(',')

改成

st=  input("Enter string:").split(',')

演示

>>> st=  input("Enter string:").split(',')
Enter string:"Jezus, Santa Maria, Program , Hangover"
>>> st[1]
' Santa Maria'
于 2013-03-09T19:19:14.490 回答
0

您发布的代码与string. 您实际上需要string使用该split方法从 生成一个新对象,该对象是一个子字符串列表。

我的方法是:

substrings = [s.strip() for s in yourstring.split(',')]

这将用逗号分隔字符串,并将 STRIPPED 子字符串添加到列表中(从而删除任何空格)。

然后你可以这样做:

> substrings[0]
>> 'Jezus'
于 2013-03-09T19:19:44.003 回答