【问题标题】:Boolean. Is string in list and not last position ? Python布尔值。字符串在列表中而不是最后一个位置吗? Python
【发布时间】:2013-05-02 20:02:41
【问题描述】:

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

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

例子:

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'))

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

【问题讨论】:

    标签: python if-statement boolean


    【解决方案1】:

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

    >> 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
    

    【讨论】:

    • 我不知道为什么我没想到
    • 可能发生在我身上,真的 ;)
    【解决方案2】:

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

    'def' in my_list[:-1]
    

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

    【讨论】:

      【解决方案3】:

      尝试使用子列表...

      'def' in my_list[:-1]
      

      【讨论】:

      • @mgilson 太棒了...从 xterm 到 Chromium 窗口只有 5 英寸!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-14
      • 2017-11-06
      • 1970-01-01
      • 1970-01-01
      • 2021-12-11
      • 2019-08-17
      • 2018-11-05
      相关资源
      最近更新 更多