我想知道如何缩短此代码并使它看起来更合适

时间:2019-05-22 19:31:48

标签: python-3.x

我想知道我编写的代码是否可以进一步缩短,我正在练习,然后想到了一个任务,要求您返回布尔值,这就是问题所在:

  

给出两个字符串,如果两个字符串中的任何一个出现在   其他字符串的结尾,忽略大小写差异   (换句话说,计算不应该区分大小写)。   注意:s.lower()返回字符串的小写版本。

def end_other(a, b):
  x = len(b)
  n = a[-x:]
  y = len(a)
  m = b[-y:]
  if b.lower() == n.lower() or a.lower() == m.lower() :
    return True
  else:
    return False

该代码运行正常,但我想知道是否可以将其缩短得更多,所以看起来不错。

1 个答案:

答案 0 :(得分:0)

您可以这样写:

def end_other(a, b):
  n = a[-len(b):]
  m = b[-len(a):]
  return b.lower() == n.lower() or a.lower == m.lower()

我删除了变量xy,因为它们只使用了一次,然后我也删除了if-else语句,因为这是不必要的,实际上,您可以返回变量的结果。比较而不是检查结果并再次返回。