在这里使用str.split
和str.join
:
>>> GroceryList = ['apples', 'oranges', 'strawberries and grapes', 'blueberries']
>>> [", ".join(x.split(' and ')) for x in GroceryList]
['apples', 'oranges', 'strawberries, grapes', 'blueberries']
或者你可能想要这个:
>>> [y for x in GroceryList for y in x.split(' and ')]
['apples', 'oranges', 'strawberries', 'grapes', 'blueberries']
str.split
sep
在传递给它的字符串(或默认情况下在任何空格处)拆分字符串并返回一个列表。
>>> strs = 'strawberries and grapes'
>>> strs.split(' and ')
['strawberries', 'grapes']
,
在字符串中使用两个单词之间添加 astr.replace
不会使其成为两个不同的字符串,您只需修改该字符串并在其中添加一个逗号字符。
类似的方法是使用ast._literal_eval
但在这里推荐。
但这要求单词周围有引号。
例子:
>>> from ast import literal_eval
>>> strs = '"strawberries" and "grapes"'
>>> literal_eval(strs.replace('and', ',')) # replace 'and' with a ','
('strawberries', 'grapes') #returns a tuple