大佬看看这里为什么错了
看了答案,发现思路差不多,但是为什么我写的代码老是报错pop超出范围 ps:后面加了j -= 1也还是报错 本帖最后由 jackz007 于 2022-10-12 22:01 编辑def fy_shuffle(x , n = 1):
begin , after = list(x) , []
for i in range(n):
for _ in range(len(begin)):
after . append(begin . pop(random . randint(0 , len(begin) - 1)))
print('第', i + 1 , '次打乱后的结果是 : ' , '' . join(after))
begin , after = after[:] , []
print('最终结果是:' , '' . join(begin))
x = input('请输入需要打乱的字序列:')
n = int(input('请输入需要打乱的次数:'))
fy_shuffle(x , n)
运行实况:
D:\\Python>python x.py
请输入需要打乱的字序列:ABCDEFG
请输入需要打乱的次数:5
第 1 次打乱后的结果是 :CBFDEAG
第 2 次打乱后的结果是 :EFCBGDA
第 3 次打乱后的结果是 :AECGDFB
第 4 次打乱后的结果是 :BACFEGD
第 5 次打乱后的结果是 :BFCGADE
最终结果是: BFCGADE
D:\\Python>
页:
[1]