如何使用函数将数字列表乘以 2?(Python)

我是初学者,想问一下如何使用 for 循环制作一个将列表乘以 2 的函数。我试图在别处寻找答案,但没有成功。



白衣非少年
浏览 154回答 5
5回答

撒科打诨

最 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]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python