Pythonで文字列中の重複する文字の数を調べる方法は何ですか?
Pythonの辞書を使用して、文字列中の繰り返し文字の数を検索することができます。具体的な手順は以下の通りです:
- 文字とその出現回数を保存するための空の辞書を作成します。
- 文字列内の各文字を巡回する。
- 辞書に文字が存在しない場合、文字をキーとし、値を1に設定して辞書に追加します。
- 辞書に文字がすでに存在している場合、その対応する値を1追加します。
- 最後に、辞書のキーと値をループして、重複する文字とその個数を出力します。
以下是用Python代码实现上述步骤的示例:
def count_duplicate_chars(string):
char_count = {} # 创建一个空字典
# 遍历字符串中的每个字符
for char in string:
# 如果字符不存在于字典中,则将字符作为键,值设为1,并添加到字典中
if char not in char_count:
char_count[char] = 1
# 如果字符已经存在于字典中,则将对应的值加1
else:
char_count[char] += 1
# 遍历字典中的键值对,输出重复字符及其个数
for char, count in char_count.items():
if count > 1:
print(f"字符 '{char}' 重复了 {count} 次。")
# 测试示例
count_duplicate_chars("hello") # 输出:字符 'l' 重复了 2 次。
count_duplicate_chars("Python") # 输出:字符 'P' 重复了 2 次。
count_duplicate_chars("programming") # 输出:字符 'r' 重复了 2 次。
上記のコードでは、char_count辞書を使用して文字とその出現回数を保存しています。まず、文字列内の各文字を走査し、その後、辞書内の文字の存在に応じて異なる操作を行います。最後に、辞書のキーと値のペアを走査して、繰り返し文字とその個数を出力します。