python二维字典初始化
时间: 2024-11-05 20:12:00 浏览: 34
在Python中,二维字典(也称为嵌套字典或多层字典)是一个包含字典作为值的数据结构,可以用来存储更复杂的数据结构。你可以通过几种方式初始化它:
1. 直接创建并赋值:
```python
nested_dict = {
'key1': {'sub_key1': 'value1', 'sub_key2': 'value2'},
'key2': {'sub_key3': 'value3', 'sub_key4': 'value4'}
}
```
这里,`{'key1'}` 和 `{'key2'}` 都是字典,它们有自己的键值对。
2. 利用列表推导式或dict comprehension:
```python
keys = ['key1', 'key2']
sub_keys = ['sub_key1', 'sub_key2', 'sub_key3', 'sub_key4']
nested_dict = {key: {sk: "default_value" for sk in sub_keys} for key in keys}
# 或者
nested_dict = {k: dict(zip(sub_keys, [None] * len(sub_keys))) for k in keys}
```
这会为每个主键生成一个新的子字典,其中所有子键都有默认值。
3. 使用字典解析或dict comprehension结合if条件:
```python
nested_dict = {
'key1': {sk: f"value_{sk}" if sk.startswith('sub') else None for sk in ['sub_key1', 'sub_key2', 'non_sub_key']}
# 这里仅对以'sub'开头的子键赋值
}
```
阅读全文