文字列とその文字列内の文字を受け取り、その文字の出現回数が1回の新しい文字列を出力する関数を定義したいと思います。例えば
my_function("happy kitten","p")
'hapy kitten'
また
my_function("happykitten","t")
'happykiten'
私はもう試した
def my_function(string, lett):
newString = ""
for char in string: #all characters
for s in string: #character I'm testing
if s == len(s) > 1:
newString+=lett # if there are multiple occurrences of s, replace with lett since its a single char anyway
else:
newString+=char #if not a duplicate, add next char to newString
return newString #("happy kitten","p") returns 'ppppppppppp'
と
def my_function(string, lett):
newString = ""
for char in string: #all characters
for s in string: #character I'm testing
if s == s+1:
newString+=lett # if there are multiple occurrences of s, replace with lett since its a single char anyway
else:
newString+=char #if not a duplicate, add next char to newString
return newString #TypeError: cannot concatenate 'str' and 'int' objects
私の関数で何が問題になっていますか?インポートや組み込み関数は使用しないでください。