如何统计输入字符串中每个唯一单词的出现次数?
实现每个唯一单词的出现次数统计
你已经导入了collections.Counter,这个工具正好能帮你快速实现单词次数统计,不用手动写计数逻辑。直接基于你的现有代码修改即可,以下是调整后的完整代码:
from collections import Counter user_text = input("请输入一段文本 --> ") def word_count(user_text): return len(user_text.split()) number_of_characters = len(user_text) words = user_text.split() # 用Counter统计每个单词的出现次数 word_counts = Counter(words) print(f"你输入了 {len(user_text)} 个字符") print(f"你输入了 {len(words)} 个单词") print(f"共有 {len(word_counts)} 个唯一单词") # 按要求格式输出每个唯一单词的次数 for word, count in word_counts.items(): print(f"单词'{word}'出现了{count}次")
关键修改说明
- 把
split(' ')替换成split():默认的split()会自动处理多个空格、制表符等空白字符,避免出现空字符串被误统计成单词的问题 - 使用
Counter(words)直接生成单词与出现次数的映射,这是Python标准库提供的高效计数工具,省去了手动遍历计数的麻烦 - 遍历
word_counts.items(),按照你想要的格式逐个输出每个单词和对应的次数
内容的提问来源于stack exchange,提问作者Axel Palomino
相关产品推荐
相关产品推荐

