-
撒科打诨
最 Pythonic 的方式是使用列表理解:def double(lst): return [x*2 for x in lst]等效的是map函数——它将匿名 lambda 函数映射到列表的每个元素:def double(lst): return list(map(lambda x: x*2, lst))但是您可以像这样在 for 循环中执行此操作:def double(lst): for i in range(len(lst)): lst[i] *= 2 return lst
-
当年话下
如果你想使用 for 循环来做,你可以这样做:the_list = [1,2,3,4]for index in range(len(the_list)): the_list[index] = the_list[index]*2但更优雅的是使用列表理解并根据需要使用函数:def multiply_array(the_list): new_list = [item*2 for item in the_list] return new_list
-
MM们
你问了一个功能。您将使用def语句来定义函数。在函数内部,您将使用 遍历索引range,并将*=每个索引处的现有值乘以指定的数字。def double_it(your_list): for index in range(len(your_list)): your_list[index] *= 2这将更新列表中的元素。如果有其他对该列表的引用,那么它们也将看到新值。例如,如果您有:a = [1, 2, 3]b = adouble_it(a)print(b)然后你也会看到更新后的值,b因为它指向同一个列表。
-
慕婉清6462132
这是使用的解决方案for loopdef multi(): o=[] for i in a: b=i*2 o.append(b) print(o)a=[1,2,3,4]multi()
-
青春有我
您可以使用列表理解:my_list = [1, 2, 3, 4, 5]my_new_list = [num * 2 for num in my_list]>>> print(my_new_list)[2, 4, 6, 8, 10]