Update u2/list_ops.py
This commit is contained in:
parent
4133dc0af9
commit
a62a61ecc8
@ -6,45 +6,52 @@ def append(list1, list2):
|
|||||||
result += [item]
|
result += [item]
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def concat(lists):
|
def concat(lists):
|
||||||
result = []
|
result = []
|
||||||
for sublist in lists:
|
for sublist in lists:
|
||||||
result = append(result, sublist)
|
result = append(result, sublist)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def filter(function, lst):
|
def filter(function, lst):
|
||||||
result = []
|
result = []
|
||||||
for item in list:
|
for item in lst:
|
||||||
if function(item):
|
if function(item):
|
||||||
result += [item]
|
result += [item]
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def length(lst):
|
def length(lst):
|
||||||
result = 0
|
result = 0
|
||||||
for item in lst:
|
for _ in lst:
|
||||||
result += 1
|
result += 1
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def map(function, lst):
|
def map(function, lst):
|
||||||
result = []
|
result = []
|
||||||
for item in lst:
|
for item in lst:
|
||||||
result += [function(item)]
|
result += [function(item)]
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def foldl(function, lst, initial):
|
def foldl(function, lst, initial):
|
||||||
acc = initial
|
acc = initial
|
||||||
for item in lst:
|
for item in lst:
|
||||||
acc = function(acc, item)
|
acc = function(acc, item)
|
||||||
return acc
|
return acc
|
||||||
|
|
||||||
def foldr(function, lst, initial):
|
|
||||||
acc = initial
|
|
||||||
for acc in lst:
|
|
||||||
acc = function(acc, item)
|
|
||||||
return acc
|
|
||||||
|
|
||||||
def reverse(lst):
|
def reverse(lst):
|
||||||
result = []
|
result = []
|
||||||
for item in reverse(lst):
|
for item in lst:
|
||||||
result = [item] + result
|
result = [item] + result
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
|
def foldr(function, lst, initial):
|
||||||
|
acc = initial
|
||||||
|
for item in reverse(lst):
|
||||||
|
acc = function(acc, item)
|
||||||
|
return acc
|
||||||
Loading…
Reference in New Issue
Block a user