Merge pull request #189 from 30-seconds/list-snippet-additions
List snippet additions
This commit is contained in:
22
snippets/is_contained_in.md
Normal file
22
snippets/is_contained_in.md
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
title: is_contained_in
|
||||
tags: list,intermediate
|
||||
---
|
||||
|
||||
Returns `True` if the elements of the first list are contained in the second one regardless of order, `False` otherwise.
|
||||
|
||||
|
||||
Use `count()` to check if any value in `a` has more occurences than it has in `b`, returning `False` if any such value is found, `True` otherwise.
|
||||
|
||||
|
||||
```py
|
||||
def is_contained_in(a, b):
|
||||
for v in set(a):
|
||||
if a.count(v) > b.count(v):
|
||||
return False
|
||||
return True
|
||||
```
|
||||
|
||||
```py
|
||||
is_contained_in([1, 4], [2, 4, 1]) # True
|
||||
```
|
||||
21
snippets/map_object.md
Normal file
21
snippets/map_object.md
Normal file
@ -0,0 +1,21 @@
|
||||
---
|
||||
title: map_object
|
||||
tags: list,intermediate
|
||||
---
|
||||
|
||||
Maps the values of a list to a dictionary using a function, where the key-value pairs consist of the original value as the key and the result of the function as the value.
|
||||
|
||||
|
||||
Use a `for` loop to iterate over the list's values, assigning the values produced by `fn` to each key of the dictionary.
|
||||
|
||||
```py
|
||||
def map_object(itr, fn):
|
||||
ret = {}
|
||||
for x in itr:
|
||||
ret[x] = fn(x)
|
||||
return ret
|
||||
```
|
||||
|
||||
```py
|
||||
map_object([1,2,3], lambda x: x * x) # { 1: 1, 2: 4, 3: 9 }
|
||||
```
|
||||
18
snippets/take.md
Normal file
18
snippets/take.md
Normal file
@ -0,0 +1,18 @@
|
||||
---
|
||||
title: take
|
||||
tags: list,beginner
|
||||
---
|
||||
|
||||
Returns a list with `n` elements removed from the beginning.
|
||||
|
||||
Use slice notation to create a slice of the list with `n` elements taken from the beginning.
|
||||
|
||||
```py
|
||||
def take(itr, n = 1):
|
||||
return itr[:n]
|
||||
```
|
||||
|
||||
```py
|
||||
take([1, 2, 3], 5) # [1, 2, 3]
|
||||
take([1, 2, 3], 0) # []
|
||||
```
|
||||
18
snippets/take_right.md
Normal file
18
snippets/take_right.md
Normal file
@ -0,0 +1,18 @@
|
||||
---
|
||||
title: take_right
|
||||
tags: list,beginner
|
||||
---
|
||||
|
||||
Returns a list with `n` elements removed from the end.
|
||||
|
||||
Use slice notation to create a slice of the list with `n` elements taken from the end.
|
||||
|
||||
```py
|
||||
def take_right(itr, n = 1):
|
||||
return itr[-n:]
|
||||
```
|
||||
|
||||
```py
|
||||
take_right([1, 2, 3], 2) # [2, 3]
|
||||
take_right([1, 2, 3]) # [3]
|
||||
```
|
||||
Reference in New Issue
Block a user