Skip to main content
 首页 » 编程设计

python之我正在尝试使用插入方法在列表中已经存在的每个元素之后将相同的元素添加到我的列表中

2025年05月04日18telwanggs

mylist = ['.','.','.'] 
for i in mylist: 
    mylist.insert(i,'x') 
 
 
print(mylist) 
 

问题是我不断收到错误消息:

TypeError: 'str' object cannot be interpreted as an integer 

我知道 join() 方法,但我正试图让它工作,以便以后可以操作我添加的元素。

请您参考如下方法:

当你执行 for i in mylist 时,你会得到 i 中的实际列表项,而不是它们的索引。然后您尝试使用 insert - 该函数需要一个整数索引(并且正在获取一个字符串项)。 ( see here )

除此之外,您在迭代列表的同时还更改了它的长度,这是一种不好的做法,并且会导致很多错误。

正确的方法是完全创建一个新列表:

mylist = ['.','.','.'] 
new_list = [] 
for item in mylist: 
    new_list.append(item) 
    new_list.append('x') 

您的 new_list 现在是:['.', 'x', '.', 'x', '.', 'x']