pythonで連続する同じ文字を検索する方法は何ですか?

文字列内の各文字をループして、前の文字と比較して同じかどうかを確認することができます。そうすれば、それをリストに追加します。異なる場合は、リスト内の連続する同じ文字を文字列に変換して、別のリストに追加します。最終的に、2番目のリスト内の連続する同じ文字列を返します。

以下はコードの例です。

def find_consecutive_chars(string):
    consecutive_chars = []
    current_consecutive = string[0]

    for char in string[1:]:
        if char == current_consecutive[-1]:
            current_consecutive += char
        else:
            consecutive_chars.append(current_consecutive)
            current_consecutive = char

    consecutive_chars.append(current_consecutive)

    return consecutive_chars

# 示例用法
string = "aaabbbcccdddeee"
result = find_consecutive_chars(string)
print(result)  # ['aaa', 'bbb', 'ccc', 'ddd', 'eee']

この例では、入力として文字列を受け取るfind_consecutive_chars関数を定義しています。最初に、連続した同じ文字列を格納するためのconsecutive_charsと、現在チェックしている連続文字列を保持するためのcurrent_consecutiveという2つの空のリストを初期化します。最初の文字をcurrent_consecutiveに割り当てます。次に、2番目の文字から文字列を1文字ずつループで処理します。現在の文字がcurrent_consecutiveの最後の文字と同じ場合、current_consecutiveに追加します。異なる場合、すでに連続した同じ文字の文字列が見つかったことを示し、それをconsecutive_charsに追加し、current_consecutiveを現在の文字にリセットします。最後に、最後の連続した同じ文字の文字列をconsecutive_charsに追加し、それを返します。

これがあなたに役立つといいです!

bannerAds