分割字符串并追加到新列表

时间:2019-06-14 09:27:13

标签: python

我正在尝试将数据添加到names_list中,但得到的名称为list_list = list,但我不知道为什么names_list [i]成为字符串,我如何将其转换回list?

for data in f:
    drawingdata = data.split()
    names = drawingdata[0]
    heights = drawingdata[1]
    names_list = names.strip('][').split(',')
    for i in range(len(new_name)):
        names_list[i].append(new_name[i])

2 个答案:

答案 0 :(得分:1)

  

我不知道为什么names_list [i]成为字符串,如何将其转换回列表?

names_list是一个列表

names_list[i]是列表的i_th元素(索引为0),这就是为什么它是字符串

您想要做的是names_list.append,而不是names_list[i].append(您想附加到整个列表,而不是附加到列表的元素)

此外,如果new_name是单个名称,则整个循环是不必要的,因为您会将名称的每个字母附加为单独的条目!

只需names_list.append(new_name)

答案 1 :(得分:0)

我认为这是原因:

names_list[i]返回一个字符串,因为drawingdata是一个列表,每个值都是一个字符串,而namesdrawingdata中的第一项,因此它是一个字符串。因此,names_listnames拆分为带有字符串的列表,因此names_list[i]是一个字符串。

要回答有关将name_list[i]转换为列表的问题,可以尝试[names_list[i]],它会为您提供一个仅包含names_list[i]的列表。