也许这是一个讽刺但我找不到答案 如何在每个逗号变为列表后切换长字符串 像这样:
st= input("Enter string:").slice(',')
我输入了一个像“Jezus,Santa Maria,Program,Hangover”这样的字符串
我想把它切成['Jezus','Santa Maria','Program','Hangover']
然后使用st[1]
作为圣玛丽亚
但是当我尝试打印st[1]
时,它只出现'e'
我希望圣玛丽亚出来。
有帮助吗?
使用python 3.3 Windows
答案 0 :(得分:1)
使用split
:
>>> "Jezus, Santa Maria, Program , Hangover".split(', ')
['Jezus', 'Santa Maria', 'Program ', 'Hangover']
请注意,您的单词不仅以逗号分隔,而且以逗号分隔空格。
答案 1 :(得分: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'
答案 2 :(得分:0)
您发布的代码对string
无效。实际上,您需要使用string
方法从split
生成一个新对象,这是一个子字符串列表。
我的方法是:
substrings = [s.strip() for s in yourstring.split(',')]
这会将字符串除以逗号作为分隔符,并将STRIPPED子字符串添加到列表中(从而删除任何空格)。
然后你可以这样做:
> substrings[0]
>> 'Jezus'