Ah, I'd forgotten that in shuffle( x[, random], "random" would be the default. But please bear with me. Using your function a, I wrote testShuffle.py:
# testShuffle.py
from random import *
def a():
return 0.5lst = ['1', '2', '3', '4']
shuffle(lst,a)
print lst
>>>
['1', '4', '2', '3']
>>>
Again, this just the random reordering of lst in place. Could you show me a little script where the 2nd argument of shuffle actually does something?
no, it's not a random reordering.
As others have said already,
you can't determine the randomness of a function just by running it once.
Why do you think it's a random reordering?
If you ran it many times, you'd see why we've been saying that it's important not to test it just once.
#--- example script.py
from random import shuffle
def a():
return 0.5
def run_shuffle(lst):
shuffle(lst,a)
print lst
import copy
lst = [1,2,3,4]
for x in range(20):
tmp = copy.copy(lst)
run_shuffle(tmp)
#--- end
output:
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
[1, 4, 2, 3]
>>>
So yes, I have already given you an example where the second argument does something.
Or do you still think that it's random? :)
Thanks,
You're welcome.
Dick Moores
-Luke
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor