"bhaaluu" <[EMAIL PROTECTED]> wrote 

In addition to Kents comments about dictionaruy 
access I think there may be another problem in 
your logic.

> The first loop is supposed to populate G with
> a random range of 4 integers 10 to 109
> in random keys 1-19 that have a zero (except keY 6 and  keY 11)
> So keY 6 and keY 11 should both have a zero in G after the
> four integers have been sown.
> 
>    if keY == 6 or keY == 11 or tablE.values()[keY-1][6] != 0:
>        tablE.values()[5][6] = 0
>        tablE.values()[10][6] = 0
>        cnt -= 1
>        keY = random.choice(a)

This detects any of the exception cases so a simple else 
clause should be sufficient for the others. However if you 
really want an explicit check...

>    if keY != 6 or keY != 11 or table.values()[keY-1][6] == 0:

This test should use 'and' rather than 'or' since you want 
all of the conditions to be true, not just one of them.
But since the failing condituions should all have been 
caught above simply using else here would do what 
I think you want.

>        b = range(10,110) # 10 to 109
>        integer = random.choice(b)
>        tablE.values()[keY-1][6] = integer
>        cnt += 1


-- 
Alan Gauld
Author of the Learn to Program web site
http://www.freenetpages.co.uk/hp/alan.gauld

_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to