Python-对于if else和for循环,需要一个代码行[closed]

问题描述 投票:-4回答:1

此代码需要一行代码。以下代码按预期工作

def has_33(nums):
     for i in range(len(nums)-1):
          if (nums[i] ==3) and (nums[i+1] ==3):
               return True
     return False

我使用下面的函数来调用它:

has_33([1, 3, 3])

我尝试了以下内联代码,但对我不起作用:

def has_33(nums):
     return True if nums[i] == 3 and nums[i+1] ==3 else False for i in range(len(nums)-1)

有人可以告诉我为什么它不起作用,请给我一个解决方案注意:我想要一个不使用任何功能的解决方案。

python string inline
1个回答
0
投票

尝试一下:

return any([(nums[i] ==3) and (nums[i+1] ==3) for i in range(len(nums)-1)])
© www.soinside.com 2019 - 2024. All rights reserved.