gpt4 book ai didi

Python 在 for 循环中拆分为多个对(名称 :value) of output

转载 作者:行者123 更新时间:2023-11-30 22:09:10 27 4
gpt4 key购买 nike

我在 python 中有以下代码:

features = {}
for string in vector:
string = 'name1:value1 name2:value2 name3:value3'
name,value = string.split(":");
features[self._getFeatureId(name)] = float(value);
return features

但是当我运行代码时,出现以下错误:

name,value = string.split(":");
ValueError: too many values to unpack

这应该是一个 for 循环,它将它们分成 3 个不同的名称和值对。代码可能有什么问题?

最佳答案

string = "name1:value1 name2:value2 name3:value3"
split_on_colon = string.split(":"); # output = ['name1', 'value1 name2', 'value2 name3', 'value3']
split_on_space = string.split(); # No argument means split on white space; output = ['name1:value1', 'name2:value2', 'name3:value3']
# The split you desire is on space and THEN split each item on colon
desired_split = [s.split(':') for s in string.split()] # output = [['name1', 'value1'], ['name2', 'value2'], ['name3', 'value3']]

此外,错误ValueError:要解压的值太多再清楚不过了。它的字面意思是,您正在尝试解压比迭代器中更少的值。

关于Python 在 for 循环中拆分为多个对(名称 :value) of output,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51997068/

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