本文主要是介绍LeetCode | 520.检测大写字母,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这道题直接分3种情况讨论:1、全部都为大写;2、全部都为小写;3、首字母大写其余小写。这里我借用了一个全是大写字母的串和一个全为小写字母的串进行比较
class Solution(object):def detectCapitalUse(self, word):""":type word: str:rtype: bool"""lo = word.lower()up = word.upper()if word == lo or word == up:return Trueif word[0] == up[0] and word[1:] == lo[1:]:return Truereturn False
题解的方法总是很巧妙简洁
class Solution:def detectCapitalUse(self, word: str) -> bool:# 若第 1 个字母为小写,则需额外判断第 2 个字母是否为小写if len(word) >= 2 and word[0].islower() and word[1].isupper():return False# 无论第 1 个字母是否大写,其他字母必须与第 2 个字母的大小写相同return all(word[i].islower() == word[1].islower() for i in range(2, len(word)))
这篇关于LeetCode | 520.检测大写字母的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!