从我的map函数中我想在循环中产生(k,v),它会将输出发送到reduce函数(给出的样本数据是map函数的输出)
auth3 {'practical': 1,'volume': 1,'physics': 1} auth34 {'practical': 1,'chemistry': 1}....
会有很多这样的条目;这只是一些例子.
这里,auth3和auth34是键,各自的值是字典项
当我尝试打印键,值时,在reduce函数内部,我得到“太多值来解压缩”错误.我的reduce函数看起来像这样
def reducefn(k,v): for k,val in (k,v): print k,v
请让我知道如何解决此错误.
解决方法 首先,使用python内置字典定义您的字典>>> dic1 = dict(auth3 = {'practical': 1,'physics': 1},auth34 = {'practical': 1,'chemistry': 1} )>>> dic1{'auth3': {'practical': 1,'auth34': {'practical': 1,'chemistry': 1}}
然后,您的reduce函数可能会变为
def reducefn(dictofdicts): for key,value in dictofdicts.iteritems() : print key,value
到底,
>>> reducefn(dic1)auth3 {'practical': 1,'physics': 1}auth34 {'practical': 1,'chemistry': 1}总结
以上是内存溢出为你收集整理的如何将字典作为值传递给python中的函数全部内容,希望文章能够帮你解决如何将字典作为值传递给python中的函数所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)