【发布时间】:2015-12-22 16:41:10
【问题描述】:
我正在使用 openpyxl 来读取和写入 xlsx 文件,出于某些数据操作目的,我需要将我的工作表(我用 2D 矩阵表示)翻译成遵循特定格式的字典,这是我的矩阵.
[['Name', 'Age', 'Gender', 'Height', 'Hair Color'],
['Jay', '12', 'M', '123cm', 'Black'],
['Marie', '13', 'F', '100cm', 'Red'],
['Dan', '16', 'M', '200cm', 'Brown']
]
我想翻译这个,结果字典看起来像:
{
{ 'Jay;12;M' : 'Name': 'Jay', 'Age': '12', 'Gender': 'M', 'Height': '123cm', 'Hair Color' : 'Black'},
{ 'Marie;13;F' : 'Name': 'Marie', 'Age': '13', 'Gender': 'F', 'Height': '100cm', 'Hair Color' : 'Red'},
{ 'Dan;16;M' : 'Name': 'Dan', 'Age': '16', 'Gender': 'M', 'Height': '200cm', 'Hair Color' : 'Brown'},
}
我对 Python 比较陌生,我相信字典理解是可行的方法,但我不确定如何按名称获取这些 2D 数组值,以便我可以正确构建我的键值对。
【问题讨论】:
-
二维数组没有名称,您需要通过提供数字索引值来选择想要的数组及其想要的元素来解决内容。
-
您可以在循环中执行类似
my_dict[my_array[0][y]] = my_array[x][y]的操作。另外,仅供参考,您的字典中的错字。应该看起来像'Jay;12;M' : {'Name': 'Jay', 'Age': '12' ...等
标签: python arrays dictionary openpyxl