|
发表于 2018-9-19 17:29:52
|
显示全部楼层
本帖最后由 上条把妹之手 于 2018-9-19 17:39 编辑
在Python 3中删除了“元组参数解包”功能。将
- def add(self, (sub, pred, obj)):
- self._addToIndex(self._spo, sub, pred, obj)
- self._addToIndex(self._pos, pred, obj, sub)
- self._addToIndex(self._osp, obj, sub, pred)
复制代码
改成一个将元组作为单个参数传递并手动解压缩的版本:
- def add(self, sub_pred_obj):
- sub, pred, obj = sub_pred_obj
- self._addToIndex(self._spo, sub, pred, obj)
- self._addToIndex(self._pos, pred, obj, sub)
- self._addToIndex(self._osp, obj, sub, pred)
复制代码
________________________________________
对于lambda函数,您不能使用赋值来解压缩。最好的解决方案通常是不拆包。例如,改变这个:
lambda (x, y): (y, x)
......对此:
lambda xy: (xy[1], xy[0])
对于复杂的功能,这可能会变得很丑陋 - 但是对于复杂的功能,def无论如何你可能都想要它们。
|
|