This commit is contained in:
Rohit Tanwar
2018-02-08 19:29:27 +05:30
parent d9ecd1051b
commit 399db0e0e0
5 changed files with 20 additions and 1 deletions

View File

@ -1,5 +1,7 @@
### count_by
:information_source: Already implemented via `collections.Counter`
Groups the elements of a list based on the given function and returns the count of elements in each group.
Use `map()` to map the values of the list using the given function. Iterate over the map and increase the the elements count each time it occurs.

11
snippets/difference_by.md Normal file
View File

@ -0,0 +1,11 @@
### difference_by
``` python
def difference_by(a, b, fn):
b = set(map(fn,b))
return [item for item in a if fn(item) not in b]
```
```python
difference_by([2.1, 1.2], [2.3, 3.4],floor); // [1.2]
difference_by([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], lambda v : v['x']); // [ { x: 2 } ]
```

View File

@ -1,6 +1,6 @@
### spread
Implements javascript's spread syntax as a function. Flattens the list(non-deep) and returns an list.
Implements javascript's `[].concat(...arr)`. Flattens the list(non-deep) and returns an list.
```python
def spread(arg):