我有一个列表student
:
student = ["test_name","1","6"]
我得到了read data
子列表:
read_data = [["test_name","1","2","5","9"],["test_name_2","1","5","2","10"]]
我编写了以下嵌套循环来返回read_data
ifstudent[0] == x[0]
中的子列表(称为x
)的索引:
lst = [read_data.index(x) for x in read_data if x[0] == student [0]]
因此,我在read data中循环遍历每个项,并且(如果x[0] == student[0]
)子列表的索引应该存储在lst
。你知道吗
当我尝试在列表的索引参数中使用它来插入数据时,如下所示:
read_data[read_data.index(x) for x in read_data if x[0] == student[0]].insert(2,student[0])
我得到一个错误,说生成器不能用于索引-为什么不能?
很明显,我可以只使用存储在lst
中的整数,但这似乎效率低下—当然有一种方法可以在一行中实现这一点。你知道吗
有没有更好的方法来检查字符串是否在read_data
的任何子列表中并获取该子列表的索引?你知道吗
我不知道你为什么要这样做,但是你需要把括号放在列表的周围,然后像这样得到第一个匹配的索引:
记住,如果列表理解产生一个空列表,您将遇到一个
IndexError
。你知道吗相关问题 更多 >
编程相关推荐