Leetcode练习(Python):第520题:检测大写字母:给定一个单词,你需要判断单词的大写使用是否正确。 我们定义,在以下情况时,单词的大写用法是正确的: 全部字母都是大写,比如"USA"。 单词中所有字母都不是大写,比如"leetcode"。 如果单词不只含有一个字母,只有首字母大写, 比如 "Google"。 否则,我们定义这个单词没有正确使用大写字母。

题目:

检测大写字母:给定一个单词,你需要判断单词的大写使用是否正确。  我们定义,在以下情况时,单词的大写用法是正确的:  全部字母都是大写,比如"USA"。 单词中所有字母都不是大写,比如"leetcode"。 如果单词不只含有一个字母,只有首字母大写, 比如 "Google"。 否则,我们定义这个单词没有正确使用大写字母。  

示例 1:

输入: "USA"
输出: True

示例 2:

输入: "FlaG"
输出: False

注意: 输入是由大写和小写拉丁字母组成的非空单词。

思路:

情况二和三一样,只需要单独判断下情况一就可以。

程序:

class Solution:
    def detectCapitalUse(self, word: str) -> bool:
        if not word:
            return False
        if len(word) == 1:
            return True
        counter = 0
        for index in range(1, len(word)):
            if word[index] >= 'A' and word[index] <= 'Z':
                counter += 1
            if counter == index or counter == 0:
                continue
            else:
                return False
        if counter == 0:
            return True
        if counter == len(word) - 1:
            if word[0] >= 'A' and word[0] <= 'Z':
                return True
            else:
                return False

  

原文地址:https://www.cnblogs.com/zhuozige/p/13025867.html