本文目录一览
- 使用{}创建字典
- 使用dict()函数创建字典
- 使用[]访问字典中的值
- print(my_dict['name']) 输出:Tom
- 使用get()方法访问字典中的值
- print(my_dict.get('age')) 输出:18
- print(my_dict.get('height')) 输出:None
- 使用[]修改字典中的值
- print(my_dict) 输出:{'name': 'Tom', 'age': 20, 'gender': 'male'}
- 使用update()方法修改字典中的值
- print(my_dict) 输出:{'name': 'Jerry', 'age': 20, 'gender': 'male', 'height': 180}
- 使用del删除字典中的值
- print(my_dict) 输出:{'name': 'Jerry', 'age': 20, 'height': 180}
- 使用pop()方法删除字典中的值
- print(my_dict) 输出:{'name': 'Jerry', 'age': 20}
- 遍历字典的键
- 遍历字典的值
- 遍历字典的键值对
- 修改日志级别
- 输出数据库连接信息
- 序列化对象属性
- 反序列化对象属性
Python是一门强大的编程语言,拥有丰富的数据结构和方法,其中字典(dict)是一种非常重要的数据结构。字典是一种键值对(Key-Value)的数据结构,可以用于存储和操作多个相关的数据。在本篇文章中,我们将介绍dict的常用方法和应用场景。
—创建字典
—我们需要了解如何创建一个字典。字典可以使用{}或dict()函数来创建,其中{}是一种更常用的方式。
示例代码:
```
使用{}创建字典
my_dict = {'name': 'Tom', 'age': 18, 'gender': 'male'}
使用dict()函数创建字典
my_dict = dict(name='Tom', age=18, gender='male')
```
—访问字典中的值
访问字典中的值是一个常见的操作,可以使用[]或get()方法来实现。如果键不存在,[]会引发KeyError异常,而get()方法会返回None。
示例代码:
```
使用[]访问字典中的值
print(my_dict['name']) 输出:Tom
使用get()方法访问字典中的值
print(my_dict.get('age')) 输出:18
print(my_dict.get('height')) 输出:None
```
—修改字典中的值
修改字典中的值也是一个常见的操作,可以使用[]或update()方法来实现。如果键不存在,[]会引发KeyError异常,而update()方法会添加新的键值对。
示例代码:
```
使用[]修改字典中的值
my_dict['age'] = 20
print(my_dict) 输出:{'name': 'Tom', 'age': 20, 'gender': 'male'}
使用update()方法修改字典中的值
my_dict.update({'name': 'Jerry', 'height': 180})
print(my_dict) 输出:{'name': 'Jerry', 'age': 20, 'gender': 'male', 'height': 180}
```
—删除字典中的值
删除字典中的值可以使用del关键字或pop()方法来实现。如果键不存在,del会引发KeyError异常,而pop()方法会返回None。
示例代码:
```
使用del删除字典中的值
del my_dict['gender']
print(my_dict) 输出:{'name': 'Jerry', 'age': 20, 'height': 180}
使用pop()方法删除字典中的值
my_dict.pop('height')
print(my_dict) 输出:{'name': 'Jerry', 'age': 20}
```
—遍历字典
遍历字典可以使用for循环来实现,可以遍历键、值或键值对。其中,items()方法可以返回键值对的元组列表,keys()方法可以返回键的列表,values()方法可以返回值的列表。
示例代码:
```
遍历字典的键
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)
```
六、应用场景
字典是一种非常灵活的数据结构,可以应用于多种场景。下面是一些常见的应用场景。
— 统计单词出现次数
可以使用字典来统计文本中每个单词出现的次数。—需要将文本分割成单词列表,然后遍历列表,使用字典来记录每个单词出现的次数。
示例代码:
```
text = "This is a sample text with several words and some repeated words"
words = text.split()
word_count = {}
for word in words:
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
print(word_count)
```
输出结果:
```
{'This': 1, 'is': 1, 'a': 1, 'sample': 1, 'text': 1, 'with': 1, 'several': 1, 'words': 2, 'and': 1, 'some': 1, 'repeated': 1}
```
— 存储配置信息
可以使用字典来存储应用程序的配置信息,例如数据库连接信息、日志级别等。字典可以轻松地存储键值对,方便配置信息的读取和修改。
示例代码:
```
config = {
'db_host': 'localhost',
'db_port': 3306,
'db_user': 'root',
'db_password': '123456',
'log_level': 'INFO'
}
修改日志级别
config['log_level'] = 'DEBUG'
输出数据库连接信息
print(f"Database connection: {config['db_user']}:{config['db_password']}@{config['db_host']}:{config['db_port']}")
```
输出结果:
```
Database connection: root:123456@localhost:3306
```
— 存储对象属性
可以使用字典来存储对象的属性,方便序列化和反序列化。在Python中,对象的属性可以使用__dict__属性来获取,它返回一个包含所有属性的字典。
示例代码:
```
class Person:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
person = Person('Tom', 18, 'male')
序列化对象属性
person_dict = person.__dict__
print(person_dict)
反序列化对象属性
new_person = Person(**person_dict)
print(new_person.name, new_person.age, new_person.gender)
```
输出结果:
```
{'name': 'Tom', 'age': 18, 'gender': 'male'}
Tom 18 male
```
七、—
本篇文章介绍了Python字典(dict)的常用方法和应用场景。字典是一种非常灵活的数据结构,可以用于存储和操作多个相关的数据。在实际应用中,我们可以根据具体的需求,灵活运用字典来解决问题。