gpt4 book ai didi

python - 如何将列表列表更改为键、值?

转载 作者:行者123 更新时间:2023-11-30 22:37:48 24 4
gpt4 key购买 nike

我想将数据转换为:csv 中的第一行是键,以下行是值。我怎样才能做到这一点?

因此,我希望键为“SkuPartNumber”、“ActiveUnits”、“ConsumedUnits”,值为其下方的行。

目标是我可以按照下面的方式查询记录并将值存储在其他地方。

for i in records:
...
results.append((i['SkuPartNumber'],i['ActiveUnits'],i['ConsumedUnits'])

代码:

>>>cmd = ['C:\\WINDOWS\\system32\\WindowsPowerShell\\v1.0\\powershell.exe', 'script.ps1']
>>>subprocess.call(cmd)
>>> with open ('sku.csv', 'r') as sku:
... reader = csv.reader(sku)
... records = list(reader)
...
>>> type(records)
<class 'list'>
>>> pprint(records)
[['SkuPartNumber', 'ActiveUnits', 'ConsumedUnits'],
['EXCHANGESTANDARD', '1', '1'],
['O365_BUSINESS_PREMIUM', '4', '4']]
>>>

感谢一些帮助。

预期结果:

[{
"SkuPartNumber": "EXCHANGESTANDARD",
"ActiveUnits": 1,
"ConsumedUnits": 1
}, {
"SkuPartNumber": "O365_Business_Premium",
"ActiveUnits": 4,
"ConsumedUnits": 4
}]

最佳答案

我不知道你为什么要引入子流程、powershell 和其他主题,但你需要的是 csv 模块中的 DictReader

>>> from csv import DictReader
>>> filedata = '''SkuPartNumber,ActiveUnits,ConsumedUnits
... EXCHANGESTANDARD,1,1
... O365_BUSINESS_PREMIUM,4,4
... '''
>>> list(DictReader(filedata.splitlines()))
[{'ActiveUnits': '1', 'ConsumedUnits': '1', 'SkuPartNumber': 'EXCHANGESTANDARD'}, {'ActiveUnits': '4', 'ConsumedUnits': '4', 'SkuPartNumber': 'O365_BUSINESS_PREMIUM'}]

在您的实际代码中,只需使用 list(DictReader(f)) ,其中 f 是打开的文件的名称。

关于python - 如何将列表列表更改为键、值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43765097/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com