我的守则:-
Videos10k=[{'title': '', 'titleWords': ['...','...'], 'titleLength': 10, 'likes': 86, 'disLikes': 5, 'views': 2202, 'creator': '...', 'description': '...'}]
def getavg(number, array=[]):
views_avg = 0
for idx, Video in array:
views = Video["views"]
views_avg = views_avg + views
views_avg = views_avg / len(array)
print("Average views for " + number + " " + views_avg)
getavg("10k", Videos10k)我得到了这个错误。错误:-
idx的getavg中的
,数组中的视频: ValueError:太多的值来解包(预期的2)
发布于 2021-06-20 07:39:22
enumerate函数给出了索引号。
更改代码,如下所示
for idx, Video in enumerate(array):发布于 2021-06-20 07:42:01
你需要在数组中只使用视频,而不是idx,视频
Videos10k=[{'title': '', 'titleWords': ['...','...'], 'titleLength': 10, 'likes': 86, 'disLikes': 5, 'views': 2202, 'creator': '...', 'description': '...'}]
def getavg(number, array=[]):
views_avg = 0
for Video in array:
views = Video["views"]
views_avg = views_avg + float(views)
views_avg = views_avg / len(array)
print("Average views for " + str(number) + " " + str(views_avg))或者你可以改变成这样
for idex, Video in enumerate(array):发布于 2021-06-20 07:55:53
如果要遍历数组的索引,可以使用枚举,如下所示:
for idx, Video in enumerate(array):或者使用zip:
for idx,Video in zip(range(len(array)),array):在您的代码中,您从未使用过idx,因此您不需要它。
https://stackoverflow.com/questions/68053633
复制相似问题