我正在尝试将一些java代码转换为python等效代码,以便能够在两者之间进行接口。因此,在Java中,我有如下代码:
public int[] toArray(boolean order) {
return toArray(order, this.length());
}
public int[] toArray(boolean order, int length) {
...
}
python中的逻辑等价物可能如下所示:
def to_array(self, order):
return self.to_array(order, self.length())
def to_array(self, order, length):
...
除了。。。python不允许函数重载,而是允许使用默认参数,因此,同样,您希望执行以下操作似乎是合乎逻辑的:
def to_array(self, order, length = self.length()):
...
然而。。。这在python中也是不允许的,可能是因为self在函数体中才真正“存在”
那么,在python中,正确的方法是什么呢?还是不可能
编辑:我意识到我在java代码中使用了void函数,它应该返回一个值,所以现在它们返回int[]
python的方法是使用
None
作为默认值,然后对其进行测试:相关问题 更多 >
编程相关推荐