i new programmer learning python codeacademy , supposed create function double_list returns items in list n , multiplies each number 2. every time run code error: ' double_list([0, 1]) returned [0, 1] instead of [0, 2]'
n = [3, 5, 7] def double_list(x): in range(0, len(x)): x[i] = x[i] * 2 return x print double_list(n)
your function can return once, need out of for loop. written, function return x after first iteration, none of remaining elements modified.
def double_list(x): in range(0, len(x)): x[i] = x[i] * 2 return x an alternative, way, use simple list comprehension, not modify original list , create new 1 can assign original variable if you'd like
def double_list(x): return [i*2 in x] >>> n = [3, 5, 7] >>> n = double_list(n) >>> n [6, 10, 14] if prefer modify actual list argument, can use change function to
def double_list(x): index, value in enumerate(x): x[index] = 2 * value >>> n = [3, 5, 7] >>> double_list(n) >>> n [6, 10, 14]
Comments
Post a Comment