请写出python程序:1.输入一个英文句子(单词之间用空格分割),统计每个单词出现的次数,并输出
时间: 2024-06-04 16:10:48 浏览: 263
sentence = input("请输入一个英文句子:")
words = sentence.split()
word_counts = {}
for word in words:
if word in word_counts:
word_counts[word] += 1
else:
word_counts[word] = 1
for word, count in word_counts.items():
print(word, "出现了", count, "次")
相关问题
5.使用字典编写一个程序,用户输入一个卖文句书,句子中美词之间以空格隔开,统计每不单词出现的次数(输入句子中只有单河和 空格,无其他字符)
当然可以,这是一个简单的Python程序,使用字典来统计用户输入句子中每个单词的出现次数:
```python
def word_count():
# 请求用户输入句子
sentence = input("请输入一个句子(只包含单词和空格),例如:Hello World Hello Again: ")
# 将字符串分割成单词列表并移除标点符号
words = sentence.lower().split() # 转换为小写并拆分
cleaned_words = [word for word in words if word.isalnum()] # 只保留字母和数字
# 使用字典统计单词出现次数
word_dict = {}
for word in cleaned_words:
if word in word_dict:
word_dict[word] += 1
else:
word_dict[word] = 1
# 打印结果
print("单词及其出现次数:")
for word, count in word_dict.items():
print(f"{word}: {count}")
# 运行函数
word_count()
```
当你运行这个程序时,它会提示你输入一个句子,然后统计并打印出每个单词出现的次数,注意这里我们已忽略大小写,所以"Hello"和"hello"会被视为同一个词。
编写程序,输入多行英文句子,对每个单词计数,并保存到字典类型map1中。查看map1的内容。按照单词出现的次数从高到低排序,并查看排序后的结果。提示:因为字典类型无法排序,因此需将其转为列表类型再排序。用python,写出一个完整代码
当你需要编写Python程序来处理这个需求,可以使用collections模dule中的Counter类来快速计数单词,然后将字典转换成列表以便排序。这是一个完整的示例:
```python
from collections import Counter
# 输入多行英文句子
sentences = []
while True:
sentence = input("请输入一个英文句子(输入'q'退出):")
if sentence.lower() == 'q':
break
sentences.append(sentence)
# 对每个单词计数
word_counts = Counter(' '.join(sentences).split())
# 查看原始map1内容
print("\n原始词频字典:")
for word, count in word_counts.items():
print(f"{word}: {count}")
# 将字典转换为列表并排序
sorted_word_counts = sorted(word_counts.items(), key=lambda x: x[1], reverse=True)
# 查看排序后的结果
print("\n按词频降序排列的结果:")
for word, count in sorted_word_counts:
print(f"{word}: {count}")
```
在这个代码中,我们首先获取用户的输入作为字符串,然后使用空格分割得到单词列表,通过`Counter`计算每个单词的频率。接着,我们将计数字典转换为元组列表并按照第二个元素(频率)进行排序。最后,显示排序前后的词频统计。
阅读全文