CodeWar打怪升级-Python篇

1.  The goal of this exercise is to convert a string to a new string where each character in the new string is "(" if that character appears only once in the original string, or ")" if that character appears more than once in the original string. Ignore capitalization when determining if a character is a duplicate.

Examples

"din"      =>  "((("
"recede"   =>  "()()()"
"Success"  =>  ")())())"
"(( @"     =>  "))((" 

My answer

大小写转换函数、for循环、replace函数

def duplicate_encode(word):
    
    count={}
    for i in word.lower():
        if i not in count:
            count[i]=1
        else:
            count[i]+=1
    
    new_word=word.lower()
    for i in new_word:
        if count[i]>1:
            new_word=new_word.replace(i,')')
        else:
            new_word=new_word.replace(i,'(')
    return new_word

  

 2

def sum_two_smallest_numbers(numbers):
    for i in range(0,len(numbers)-1):
        if (not isinstance(numbers[i],int)) or numbers[i]<0:
            numbers.remove(numbers[i])
    new_num=numbers.sort()
    sum=0
    sum=sum+int(new_num[0])+int(new_num[1])
    return sum

  

 

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注