我想知道我编写的代码是否可以进一步缩短,我正在练习,然后想到了一个任务,要求您返回布尔值,这就是问题所在:
给出两个字符串,如果两个字符串中的任何一个出现在 其他字符串的结尾,忽略大小写差异 (换句话说,计算不应该区分大小写)。 注意: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
该代码运行正常,但我想知道是否可以将其缩短得更多,所以看起来不错。
答案 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()
我删除了变量x
和y
,因为它们只使用了一次,然后我也删除了if-else
语句,因为这是不必要的,实际上,您可以返回变量的结果。比较而不是检查结果并再次返回。