统计单词
Problem Description
请使用字典编写一个程序,让用户输入一个英文句子,然后统计每个单词出现的次数。
Input Description
输入一行英文句子
Output Description
以字典的形式(单词为key,单词出现的次数为value)输出每个单词出现的次数
Sample Input
Python python hello 123 123 123
Sample Output
{'python': 2, 'hello': 1, '123': 3}
代码如下:
方法一:
def count_words(sentence):
# 将句子转换为小写,并分割成单词列表
words = sentence.lower().split()
# 创建一个字典来存储单词计数
word_count = {}
# 遍历单词列表,统计每个单词出现的次数
for word in words:
# 如果单词已经在字典中,增加计数
if word in word_count:
word_count[word] += 1
# 如果单词不在字典中,添加到字典并设置计数为1
else:
word_count[word] = 1
# 返回单词计数字典
return word_count
# 从用户那里获取输入
sentence = input()
# 调用函数并打印结果
print(count_words(sentence))
方法二:
msg = input()
# 获取用户输入的字符串,并将其存储在变量msg中。
msg = msg.lower()
# 将字符串转换为小写,以便不区分单词的大小写。
msg_list = msg.split()
# 使用split()方法将字符串分割成单词列表,每个单词是列表中的一个元素。
dict_count = {}
# 初始化一个空字典,用于存储单词及其出现次数。
for m in msg_list:
# 遍历单词列表中的每个单词。
if m not in dict_count:
# 如果单词不在字典中。
dict_count[m] = 1
# 将单词添加到字典,并设置其出现次数为1。
else:
# 如果单词已经在字典中。
dict_count[m] = dict_count[m] + 1
# 增加该单词在字典中的出现次数。
print(dict_count)
# 打印包含单词及其出现次数的字典。
字典相关基础知识
在Python中,字典(dictionary)是一种可变的数据结构,它存储了键值对(key-value pairs)的集合。每个键都是唯一的,并与一个值相关联。字典在Python中非常有用,因为它们允许你根据键快速查找、添加、修改和删除值。下面是一些关于Python字典的基础知识:
字典的创建
你可以使用花括号 {}
或者 dict()
函数来创建一个字典。
python复制代码
# 使用花括号创建字典 | |
my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 3} | |
# 使用 dict() 函数创建字典 | |
another_dict = dict(key1='value1', key2='value2', key3=3) | |
# 创建一个空字典 | |
empty_dict = {} |
访问字典中的值
你可以通过键来访问字典中的值。
python复制代码
print(my_dict['key1']) # 输出: value1 |
如果键不存在于字典中,尝试访问它将引发 KeyError
。为了避免这种情况,你可以使用 get()
方法,它允许你指定一个默认值。
python复制代码
print(my_dict.get('key4', 'default value')) # 输出: default value |
修改字典中的值
你可以通过键来修改字典中的值。
python复制代码
my_dict['key1'] = 'new value' | |
print(my_dict['key1']) # 输出: new value |
向字典中添加键值对
如果键不存在于字典中,给它赋值就会添加一个新的键值对。
python复制代码
my_dict['key4'] = 'value4' | |
print(my_dict) # 输出: {'key1': 'new value', 'key2': 'value2', 'key3': 3, 'key4': 'value4'} |
从字典中删除键值对
你可以使用 del
语句或 pop()
方法来删除字典中的键值对。
python复制代码
del my_dict['key2'] # 删除键值对 | |
print(my_dict) # 输出: {'key1': 'new value', 'key3': 3, 'key4': 'value4'} | |
value = my_dict.pop('key3') # 删除键值对并返回值 | |
print(value) # 输出: 3 | |
print(my_dict) # 输出: {'key1': 'new value', 'key4': 'value4'} |
检查键是否存在于字典中
你可以使用 in
关键字来检查一个键是否存在于字典中。
python复制代码
if 'key1' in my_dict: | |
print("Key exists.") | |
else: | |
print("Key does not exist.") # 不会输出,因为 key1 存在 |
遍历字典
你可以遍历字典的键、值或键值对。
python复制代码
# 遍历键 | |
for key in my_dict: | |
print(key) | |
# 遍历值 | |
for value in my_dict.values(): | |
print(value) | |
# 遍历键值对 | |
for key, value in my_dict.items(): | |
print(key, value) |
字典的长度
你可以使用 len()
函数来获取字典中键值对的数量。
python复制代码
print(len(my_dict)) # 输出字典的长度 |
字典的方法
字典对象有许多内置方法,例如 keys()
, values()
, items()
, update()
, clear()
等,它们提供了对字典内容的各种操作。
字典是Python编程中非常强大的工具,掌握它们将使你能够更高效地处理数据。
以上就是Python字典的一些基础知识。