Python3中的cmp问题

TJ1

我正在使用开源Python代码。我认为它是为Python 2编写的,当我在Python3.3中运行它时,出现此错误:

TypeError: must use keyword argument for key function

指向这些代码行:

probs = [(word, pool[word]) for word in words if word in pool]
probs.sort(lambda x,y: cmp(y[1],x[1]))

代码的类似部分:

       for pname, pprobs in pools.items():
        p = self.getProbs(pprobs, tokens)
        if len(p) != 0:
            res[pname] = self.combiner(p, pname)
    res = res.items()
    res.sort(lambda x,y: cmp(y[1], x[1]))

给出相同的错误。

我是Python的初学者,所以如果有人可以告诉我如何更改代码,我将不胜感激。

西蒙扎克

cmp已被贬低。使用key代替。

probs = [(word, pool[word]) for word in words if word in pool]
probs.sort(key=lambda x: x[1])

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Python 3中使用cmp()?

来自分类Dev

为什么在Python3中加载模块时出现问题,而在Python2中加载时却没有问题?

来自分类Dev

python3:os.walk有问题

来自分类Dev

终端中的Python3

来自分类Dev

Python3中的cmp问题

来自分类Dev

Python3的内置zip函数出现问题

来自分类Dev

Python3样式排序-新的密钥机制中的旧cmp方法功能?

来自分类Dev

Python3中的Google协议缓冲区(protobuf)-ParseFromString的问题(编码?)

来自分类Dev

Python3中的IndexError

来自分类Dev

python3中ConfigParser中的ValueError

来自分类Dev

有关Python3中的身份和布尔值的问题

来自分类Dev

使用python3和nltk从模块调用函数的问题

来自分类Dev

将cmp转换为python 3

来自分类Dev

面对使用python3刮孟加拉文字的问题

来自分类Dev

Debian10 python3问题

来自分类Dev

如何解决与Python3重构中的遍历列表相关的问题

来自分类Dev

Python3中的多处理和死锁问题

来自分类Dev

Django 1.6.5 + python3 wsgi问题

来自分类Dev

Python3样式排序-新的密钥机制中的旧cmp方法功能吗?

来自分类Dev

Python3 Linux中的文件名编码问题

来自分类Dev

OSX上Python3的证书问题

来自分类Dev

使用Python3安装Django的问题

来自分类Dev

python3中递归文件搜索的问题

来自分类Dev

Python3导入出现问题

来自分类Dev

Python3代码问题

来自分类Dev

Python3 的 sqlite3 模块中的自动提交问题

来自分类Dev

Python3 硒问题

来自分类Dev

在 Python3 中通过 PIP 访问模块的问题

来自分类Dev

Python3 中的 ASCII 问题