0

我正在尝试编写一行简单的代码来查找列表中的某个元素并给出真或假。

我想知道它是否在列表中。. . 它可以是列表中的任何位置,但如果它是最后一个,它也必须在另一个位置。

例子:

my_list = ['abc','def','ghi','jkl','def'] #meets criteria
my_list2 = ['abc','ghi','jkl','def'] #does not meet criteria
my_search = 'def'

my_list 在列表的中间和末尾有“def”,因此符合标准 my_list2 在末尾只有“def”,因此它不符合标准

我正在尝试类似的东西,

(('def' in my_list) and (my_list[-1] == 'def')) or (('def' in my_list) and (my_list[-1] !+ 'def'))

但我觉得这是很长的路要走。

4

3 回答 3

3

所以你可以检查它是否在列表中减去最后一个元素:

>> my_list = ['abc','def','ghi','jkl','def']
>>> 'def' in my_list[:-1]
True

>>> my_list2 = ['abc','ghi','jkl','def']
>>> 'def' in my_list2[:-1]
False
于 2013-05-02T20:05:48.923 回答
0

尝试使用子列表...

'def' in my_list[:-1]
于 2013-05-02T20:05:59.047 回答
0

你能看看前n-1个元素吗?

'def' in my_list[:-1]

除非我有误解,否则你会在第一个上给你真,在第二个上给你假

于 2013-05-02T20:07:21.853 回答