txt表格中存的数据为第一行{'A': {'B': 12}},第二行{'A1': {'B1': 14}},第三行{'A2': {'B2': 15}},存入表格数据为第一行A,B,12,第二行为A1,B1,14,第三行数据为A2,B2,15
时间: 2024-11-13 21:18:22 浏览: 3
您想要将这个嵌套字典数据转换成二维表格形式,每行对应一个键值对。这种数据可以用 Python 的 pandas 库轻松转换。首先,我们需要创建一个 DataFrame,步骤如下:
```python
import pandas as pd
data = [
{'key': 'A', 'sub_key': 'B', 'value': 12},
{'key': 'A1', 'sub_key': 'B1', 'value': 14},
{'key': 'A2', 'sub_key': 'B2', 'value': 15}
]
# 将字典列表转换为 DataFrame
df = pd.DataFrame(data)
# 现在 df 就是您所需的表格形式
print(df)
```
如果原始数据在 txt 文件中,您可能需要先读取文件并解析数据。假设您的 txt 文件内容如下:
```txt
'A': {'B': 12}
'A1': {'B1': 14}
'A2': {'B2': 15}
```
您可以这样操作:
```python
with open('your_file.txt', 'r') as file:
lines = file.readlines()
data = []
for line in lines[1:]: # 去掉第一行,因为它不是键值对
parts = line.strip().split(':')
key, sub_dict_str = parts[0], parts[1].strip()
sub_dict = eval(sub_dict_str) # 解析字面量表示的字典
data.append({'key': key, 'sub_key': next(iter(sub_dict)), 'value': sub_dict[next(iter(sub_dict))]})
df = pd.DataFrame(data)
```
阅读全文