-3

我有这本字典:

{'key': [1, 2130, 0, 279, 90, 92, 193, 1]}

而且我希望根据当时读取的特定行,密钥始终是第 3 列。

我阅读了一个 csv 文本文件并将其构建到每行的字典中。因此,对于读取的每一行,都会生成一个字典,其中包含特定行中的“键”和 CSV 中的所有值。

举个例子:

{'key': [1, 2130, 0, 279, 90, 92, 193, 1]}
{'key': [2, 2214, 0, 382, 71, 77, 211, 1]}
{'key': [3, 169, 172, 691, 302, 15, 22, 1]}
{'key': [4, 215, 363, 514, 41, 35, 172, 1]}

第一行的键应该是 0,然后是 0,然后是 172,然后是 363。

4

2 回答 2

1
>>> D = {'key': [1, 2130, 0, 279, 90, 92, 193, 1]}
>>> D[D.pop('key')[2]] = D['key']
>>> D
{0: [1, 2130, 0, 279, 90, 92, 193, 1]}
于 2013-05-30T10:10:04.450 回答
1

而且我希望根据当时读取的特定行,密钥始终是第 3 列。

我阅读了一个 csv 文本文件并将其构建到每行的字典中。

你确定你不是在找DictReader?:

import csv

with open('somefile.csv', 'rb') as f:
    reader = csv.DictReader(f, delimiter=',')
    lines = list(reader)

如果somefile.csv有以下内容:

Name, Age
John, 14
Mary, 15
Adam Smith, 40

lines将会:

[{'Name': 'John', ' Age': ' 14'}, {'Name': 'Mary', ' Age': ' 15'}, {'Name': 'Adam Smith', ' Age': ' 40'}]
于 2013-05-30T10:18:14.820 回答