我有一个列表,我正在尝试删除其中的第一项
我曾尝试使用此代码,但它没有做任何事情
del rows[rows.index(userInfo)][9].split()[0]
for context
rows[rows.index(userInfo)][9].split()
在列表中找到一个字符串,然后将字符串拆分为列表,此字符串为
Skyfall Skyfall DarkKnight DieHard CaptainAmerica Deadpool TheMatrix CaptainAmerica TheMatrix CaptainAmerica TheBourneIdentity
答案 0 :(得分:0)
尝试以下
lst = rows[rows.index(userInfo)][9].split()
del lst[0]
当您在一行中执行此操作时,您不会保存由split()
创建的列表,因此从匿名列表中删除元素没有实际效果。如果您首先将列表分配给变量,则可以使用del
删除第一个元素,然后根据需要对列表执行操作。
答案 1 :(得分:0)
我认为问题在于,您尝试从不持久的列表中删除某些内容
....split()
返回您尝试删除元素的列表。但是这个列表没有存储
您至少需要两行:
mylist = ....split()
del mylist[0]
由于split()
无法正常工作,无论如何都需要存储它......
所以你也可以写:
mylist = foo.split()[1:]
答案 2 :(得分:0)
您可以使用pop()
或使用这样的切片将其编入索引:
rows[rows.index(userInfo)][9] = " ".join(rows[rows.index(userInfo)][9].split().pop())
或
rows[rows.index(userInfo)][9] = " ".join(rows[rows.index(userInfo)][9].split()[1:])