mirror of
https://github.com/erg-lang/erg.git
synced 2025-09-28 04:09:05 +00:00
feat(Array): add dedup
, partition
method
This commit is contained in:
parent
3a14bbe37e
commit
89d830c364
3 changed files with 26 additions and 4 deletions
|
@ -1,8 +1,11 @@
|
|||
class Array(list):
|
||||
def dedup(self):
|
||||
return Array(list(set(self)))
|
||||
def dedup_by(self, f):
|
||||
return Array(list(set(map(f, self))))
|
||||
def dedup(self, f=None):
|
||||
if f == None:
|
||||
return Array(list(set(self)))
|
||||
else:
|
||||
return Array(list(set(map(f, self))))
|
||||
def push(self, value):
|
||||
self.append(value)
|
||||
return self
|
||||
def partition(self, f):
|
||||
return Array(list(filter(f, self))), Array(list(filter(lambda x: not f(x), self)))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue