美文网首页
LeetCode 520. Detect Capital 检测大

LeetCode 520. Detect Capital 检测大

作者: singed | 来源:发表于2018-08-28 10:07 被阅读0次

    链接

    https://leetcode-cn.com/problems/detect-capital/description/

    要求

    给定一个单词,你需要判断单词的大写使用是否正确。

    我们定义,在以下情况时,单词的大写用法是正确的:

    全部字母都是大写,比如"USA"。
    单词中所有字母都不是大写,比如"leetcode"。
    如果单词不只含有一个字母,只有首字母大写, 比如 "Google"。
    否则,我们定义这个单词没有正确使用大写字母。

    输入: "USA"
    输出: True
    
    输入: "FlaG"
    输出: False
    

    相关代码

    思路:
    列表解析式判断大小写后用if语句判断。

    import string
    
    class Solution(object):
        def detectCapitalUse(self, word):
            word_list = [x in string.ascii_uppercase for x in list(word)]
            if len(set(word_list)) == 1:
                return True
            if word_list[0] == True and len(set(word_list[1:])) == 1:
                return True
            else:
                return False
    

    大神的解法... 厉害了

    class Solution(object):
        def detectCapitalUse(self, word):
            """
            :type word: str
            :rtype: bool
            """
            if word.upper()  == word:
                return True
            elif word.capitalize() ==word:
                return True
            elif word.lower() == word:
                return True
            else:
                return False
    

    相关文章

      网友评论

          本文标题:LeetCode 520. Detect Capital 检测大

          本文链接:https://www.haomeiwen.com/subject/dohfwftx.html