原题:
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" => ")())())"
"(( @" => "))(("
我的解法:
def duplicate_encode(word):
word = word.lower()
l = []
for x in word:
n = word.count(x)
if n > 1:
l.append(')')
elif n == 0 or n == 1:
l.append('(')
return ''.join(l)
考察字符串的方法,开始想用x.replace(),后来发现无法识别字符串中原本的括号,所以改用列表解决