如何复制列表中的元素? 没有返回任何值,甚至不改变列表的顺序?
例如我已经定义了一个带参数的函数:
def func1(list1):
在:list1 = [342,548,23,321,555]
在:func1(list1)
在:list1
Out:[342,548,23,321,555,342,548,23,321,555]
非常感谢你!
答案 0 :(得分:2)
def func1(list1):
list1.extend(list1)
答案 1 :(得分:1)
In [47]: list1 = [342, 548, 23, 321, 555]
In [48]: list1*2
Out[48]: [342, 548, 23, 321, 555, 342, 548, 23, 321, 555]
答案 2 :(得分:0)
我们可以使用list[:] = other_list
重新分配列表的内容。 list*2
会给我们两次整个列表
def func1(inlist):
inlist[:] = inlist*2
答案 3 :(得分:0)
def func1(list1):
list1 = list1 * 2
print(list1)
list1 * 2将按顺序
复制列表中的值答案 4 :(得分:0)
最好的方法是:
list_2=list1*2
print(list_2)
其他方式你也可以使用itertools循环:
final_result=[]
count=0
for i in itertools.cycle(list1):
count+=1
if count==2*len(list1)+1:
break
final_result.append(i)
print(final_result)
输出:
[342, 548, 23, 321, 555, 342, 548, 23, 321, 555]