Python:将一个列表中的字符串添加到第二个列表中,字符串本身在列表中

Python:将一个列表中的字符串添加到第二个列表中,字符串本身在列表中,python,string,list,Python,String,List,我觉得我缺少了一些基本的东西,但无论如何: 我试图将一个列表中的元素(即字符串)添加到第二个列表中,但我希望这些字符串位于列表中 例如,oldList=['A1'、'B2'、'C3'、'D4']中的元素应该导致newList=[['A1']、['B2']、['C3']、['D4'] 我尝试过类似以下代码: newList = [] for item in oldList: newList.append(item) print newList 它将输出oldList的精确副本 我还尝试:

我觉得我缺少了一些基本的东西,但无论如何:

我试图将一个列表中的元素(即字符串)添加到第二个列表中,但我希望这些字符串位于列表中

例如,
oldList=['A1'、'B2'、'C3'、'D4']
中的元素应该导致
newList=[['A1']、['B2']、['C3']、['D4']

我尝试过类似以下代码:

newList = []
for item in oldList:
    newList.append(item)
print newList
它将输出
oldList
的精确副本

我还尝试:

newList = []
for item in oldList:
    newList.append(list(item))
print newList
它输出
[['A','1'],['B','2'],['C','3'],['D','4']


那么,我到底遗漏了什么呢?

当您对iterable使用
list
函数时,它将迭代该对象,并使用该iterable的每个元素创建一个新列表

在您的情况下,字符串是可编辑的。因此,
list
迭代字符串并获取单个字符(Python中没有称为字符的东西,这只是为了我们的理解),然后将一个新的列表放在一起

这就是为什么您的代码没有按预期工作。相反,您可以使用列表理解,如下所示

oldlist = ['A1','B2','C3','D4']
print [[item] for item in oldlist]
# [['A1'], ['B2'], ['C3'], ['D4']]
newList.append([item])
或者在您的程序中,不使用
list
而可以使用list-literal将字符串设置为列表,如下所示

oldlist = ['A1','B2','C3','D4']
print [[item] for item in oldlist]
# [['A1'], ['B2'], ['C3'], ['D4']]
newList.append([item])

但是列表理解比列表更受欢迎。在构建简单的新列表时,比如在你的例子中,添加。

这很快,哈哈。我想我必须阅读一下Python中的列表理解;谢谢。@Auhsoj100如果你觉得我的回答对你有帮助,你可以:-)我想我是在我们刚才评论的两个时期之间做的:)