我在这里看过一些主题,因为我没有完全消化它或使我的代码工作。 这很简单,但我一直有很多问题与此所以在这里,它是:从头换换和洗牌
我
lst = ["a", "b", "c", "d"]
我试图通过引用它们的位置交换两个元素的列表列表中,到目前为止,我,
编辑我不能使用替代掉在Python
def swap(i, j, lst):
placehold_swap = j
j = i
i = placehold_swap
我一直在想做这样的事情,以便更新列表的顺序
lst = lst
显然这是行不通的。我的第一反应是做
return lst
但在分配我不能使用返回或打印,我只允许修改LST
下一个步骤是创建一个内部的另一个函数循环,从列表中交换随机元素100+次
import random
def shuffle(lst):
for i in range (100):
placehold_shuffle = []
choose1 = random.randint(0, len(lst)-1)
choose2 = random.randint(0, len(lst)-1)
placehold_shuffle = swap(choose1, choose2, lst)
洗牌的名单,我不允许有一个回报LST或任何类型的回报这么认为我应该有一个表= [事端g]循环内部或外部的某个地方,以便一旦某物被洗牌,它将其保存为更新列表,然后在循环内再次洗牌,但我不知道该怎么做,我也没有玩过因为我无法获得我的第一个功能。
跟进*
我有我的两个函数的工作是这样的:
def swap(i, j, lst):
placehold_swap = lst[j]
lst[j] = lst[i]
lst[i] = placehold_swap
import random
def shuffle(lst):
for i in range (100):
choice1 = random.randint(0, len(lst)-1)
choice2 = random.randint(0, len(lst)-1)
swap(choice1, choice2 , lst)