Будьте осторожны с вашими отступами:
def shuffle(L, nswaps):
n = 0
for item in L:
while n < nswaps:
card_one = choose(L)
card_two = choose(L)
if card_two == card_one:
card_two = choose(L)
n += 1
L[card_one], L[card_two] = L[card_two], L[card_one]
print L
Обратите внимание, что оператор print L
находится на том же уровне, что и содержимое цикла for
(поэтому он вызывается каждый раз при выполнении цикла).
Удалите четыре пробела из пробела, предшествующего print L
, и все должно пройти хорошо.