Python列表操作:将项添加到字符串元素以使其成为2项列表

Dan*_*ath 0 python python-3.x

让我们说在Python中我有一个列表如下:
a = ['spam', 'eggs', 100, 1234]

现在我有了价值devon,我想将其添加到'垃圾邮件'中,使其成为一个列表,结果如下: a = [['spam', 'devon'], 'eggs', 100, 1234]

编辑德鲁提出了一个很好的问题,所以我将扩展这个:

之后devon,我们也会收到baloney并希望得到结果 a = [['spam', 'devon', 'baloney'], 'eggs', 100, 1234]

最简单的方法是什么?是否有一种通用的方法来附加未知元素是否为字符串或列表的项目?

Ash*_*ary 9

修改a[0]:

>>> a = ['spam', 'eggs', 100, 1234]
>>> a[0] = [a[0], 'Devon']
>>> a
[['spam', 'Devon'], 'eggs', 100, 1234]
Run Code Online (Sandbox Code Playgroud)

对于您更新的问题:

>>> items = ['devon', 'baloney']
>>> a = ['spam', 'eggs', 100, 1234]
>>> a[0] = [a[0]] + items
>>> a
[['spam', 'devon', 'baloney'], 'eggs', 100, 1234]
Run Code Online (Sandbox Code Playgroud)

如果您不确定"垃圾邮件"的位置,请使用列表解析:

>>> a = ['spam', 'eggs', 100, 1234]
>>> [item if item != 'spam' else [item, 'devon'] for item in a]
[['spam', 'devon'], 'eggs', 100, 1234]
Run Code Online (Sandbox Code Playgroud)