New submission from Adam Doherty:

Hello:

I'm am trying to conduct some tests on a list of data that checks for
the position of values in list elements using the bisect module.  To
store the results of these tests for output to a template I have build a
dictionary with 47 keys the values of which are dictionaries themselves.
 These inner dictionaries contain 7 keys that initially are valued at
zero.  Looping through the data in my list I check for values from 1 to
47 and if I find the value I am looking for I lookup it's position in
the row using the bisect module.  Using the current value I am looking
for and the position returned from bisect I increase the value in the
matching dictionary key value position by 1. Now for speed I have built
the dictionary using d =
dict.fromkeys(xrange(1,48),dict.fromkeys(xrange(1,8),0)) as this gives
the desired result.  Unfortunately when I run my test for values each
value in the dictionary is listed as the total number of rows in the
data list.  This is not the desired result which is correctly achieved
using:
d = {}
for x in xrange(1,48):
    d[x] = dict.fromkeys(xrange(1,8),0)

I have included output from IDLE to demonstrate the problem.

----------
components: Interpreter Core
files: problem-report.txt
messages: 56507
nosy: dohertywa
severity: normal
status: open
title: dict.fromkeys - Odd logic when passing second dict.fromkeys as value
type: behavior
versions: Python 2.3, Python 2.4, Python 2.5

__________________________________
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1288>
__________________________________
>>> from bisect import bisect as bs
>>> from pysqlite2 import dbapi2 as sqlite
>>> conn = sqlite.connect("/home/dohertywa/testdata.db")
>>> data = [row for row in conn.execute("""SELECT f1,f2,f3,f4,f5,f6,f7 FROM 
>>> testtable WHERE strftime('%m', testdate) = strftime('%m', '0001-10-01')""")]
>>> conn.close()
>>> data
[(4, 6, 7, 10, 19, 39, 43), (2, 5, 30, 32, 36, 37, 42), (9, 14, 22, 29, 43, 44, 
46), (1, 13, 15, 18, 27, 32, 40), (2, 7, 19, 28, 31, 38, 45), (1, 2, 27, 33, 
34, 42, 45), (2, 11, 22, 23, 33, 45, 46), (10, 11, 19, 20, 31, 40, 44), (5, 10, 
26, 33, 42, 44, 45), (1, 11, 32, 33, 37, 45, 46), (8, 10, 12, 13, 19, 32, 42), 
(8, 13, 18, 21, 24, 25, 36), (8, 12, 17, 18, 28, 29, 35), (5, 7, 15, 24, 26, 
38, 43), (17, 21, 23, 25, 26, 33, 47), (16, 19, 27, 34, 44, 45, 46), (10, 22, 
31, 35, 40, 43, 46), (7, 15, 23, 25, 27, 37, 40), (1, 7, 19, 23, 35, 37, 45), 
(2, 5, 8, 11, 16, 20, 34), (7, 9, 16, 21, 27, 35, 45), (6, 14, 16, 20, 21, 23, 
37), (3, 10, 16, 18, 21, 37, 47), (8, 19, 20, 23, 27, 40, 44), (5, 9, 10, 14, 
32, 33, 39), (3, 4, 6, 13, 20, 34, 43), (25, 28, 29, 31, 32, 36, 45), (1, 2, 4, 
12, 20, 34, 36), (6, 10, 13, 25, 27, 40, 43), (6, 14, 25, 29, 30, 36, 40), (3, 
4, 5, 6, 41, 42, 45), (6, 19, 24, 25, 32, 34, 43), (5, 9, 10, 18, 20, 23, 46), 
(2, 3, 7, 10, 20, 24, 33), (8, 15, 16, 17, 22!
 , 32, 39), (7, 9, 12, 22, 24, 40, 41), (3, 11, 16, 21, 36, 43, 44), (2, 16, 
17, 31, 34, 36, 38), (10, 16, 18, 23, 35, 36, 46), (3, 14, 25, 31, 32, 44, 45), 
(3, 15, 23, 37, 38, 39, 43), (12, 22, 34, 37, 39, 43, 47), (3, 11, 23, 26, 27, 
28, 31), (1, 16, 18, 21, 31, 40, 42), (7, 24, 26, 29, 34, 42, 47), (3, 4, 9, 
18, 29, 34, 44), (3, 7, 14, 15, 20, 30, 46), (1, 8, 13, 23, 29, 31, 41), (14, 
15, 21, 34, 36, 42, 44), (21, 23, 25, 26, 39, 41, 45), (8, 10, 18, 19, 26, 35, 
42), (10, 15, 25, 30, 33, 40, 44), (2, 21, 23, 27, 29, 33, 41), (10, 16, 23, 
24, 27, 33, 46), (9, 15, 33, 34, 38, 41, 44), (3, 5, 13, 19, 26, 35, 41), (8, 
21, 29, 35, 38, 41, 46), (5, 20, 21, 23, 32, 40, 42), (3, 7, 27, 29, 38, 40, 
43)]
>>> dp = dict.fromkeys(xrange(1,48),dict.fromkeys(xrange(1,8),0)) #a dictionary 
>>> whose values are dictionaries whose values are 0.
>>> dp
{1: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 2: {1: 0, 2: 0, 3: 0, 4: 0, 5: 
0, 6: 0, 7: 0}, 3: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 4: {1: 0, 2: 0, 
3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 5: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 
6: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 7: {1: 0, 2: 0, 3: 0, 4: 0, 5: 
0, 6: 0, 7: 0}, 8: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 9: {1: 0, 2: 0, 
3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 10: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 
11: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 12: {1: 0, 2: 0, 3: 0, 4: 0, 5: 
0, 6: 0, 7: 0}, 13: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 14: {1: 0, 2: 
0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 15: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 
0}, 16: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 17: {1: 0, 2: 0, 3: 0, 4: 
0, 5: 0, 6: 0, 7: 0}, 18: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 19: {1: 
0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 20: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 
0, 7: 0}, 21: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6:!
  0, 7: 0}, 22: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 23: {1: 0, 2: 0, 3: 
0, 4: 0, 5: 0, 6: 0, 7: 0}, 24: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 25: 
{1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 26: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 
6: 0, 7: 0}, 27: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 28: {1: 0, 2: 0, 
3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 29: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 
30: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 31: {1: 0, 2: 0, 3: 0, 4: 0, 5: 
0, 6: 0, 7: 0}, 32: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 33: {1: 0, 2: 
0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 34: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 
0}, 35: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 36: {1: 0, 2: 0, 3: 0, 4: 
0, 5: 0, 6: 0, 7: 0}, 37: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 38: {1: 
0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 39: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 
0, 7: 0}, 40: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 41: {1: 0, 2: 0, 3: 
0, 4: 0, 5: 0, 6: 0, 7: 0}, 42: {1: 0, 2: 0, !
 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 43: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0
, 7: 0}, 44: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 45: {1: 0, 2: 0, 3: 0, 
4: 0, 5: 0, 6: 0, 7: 0}, 46: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 47: 
{1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}}
>>> dp_2 = {}
>>> for x in xrange(1,48):
        dp_2[x] = dict.fromkeys(xrange(1,8),0) #same as above to show that both 
methods result in the same result.

        
>>> dp_2
{1: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 2: {1: 0, 2: 0, 3: 0, 4: 0, 5: 
0, 6: 0, 7: 0}, 3: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 4: {1: 0, 2: 0, 
3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 5: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 
6: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 7: {1: 0, 2: 0, 3: 0, 4: 0, 5: 
0, 6: 0, 7: 0}, 8: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 9: {1: 0, 2: 0, 
3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 10: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 
11: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 12: {1: 0, 2: 0, 3: 0, 4: 0, 5: 
0, 6: 0, 7: 0}, 13: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 14: {1: 0, 2: 
0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 15: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 
0}, 16: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 17: {1: 0, 2: 0, 3: 0, 4: 
0, 5: 0, 6: 0, 7: 0}, 18: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 19: {1: 
0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 20: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 
0, 7: 0}, 21: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6:!
  0, 7: 0}, 22: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 23: {1: 0, 2: 0, 3: 
0, 4: 0, 5: 0, 6: 0, 7: 0}, 24: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 25: 
{1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 26: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 
6: 0, 7: 0}, 27: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 28: {1: 0, 2: 0, 
3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 29: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 
30: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 31: {1: 0, 2: 0, 3: 0, 4: 0, 5: 
0, 6: 0, 7: 0}, 32: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 33: {1: 0, 2: 
0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 34: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 
0}, 35: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 36: {1: 0, 2: 0, 3: 0, 4: 
0, 5: 0, 6: 0, 7: 0}, 37: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 38: {1: 
0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 39: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 
0, 7: 0}, 40: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 41: {1: 0, 2: 0, 3: 
0, 4: 0, 5: 0, 6: 0, 7: 0}, 42: {1: 0, 2: 0, !
 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 43: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0
, 7: 0}, 44: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 45: {1: 0, 2: 0, 3: 0, 
4: 0, 5: 0, 6: 0, 7: 0}, 46: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 47: 
{1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}}
>>> for x in xrange(1,48):
        for row in data:
                if x in row:
                        dp[x][bs(row,x)] += 1
                        dp_2[x][bs(row,x)] += 1
#here we test for the presence of a value in each row of data and if present 
it's position in the row is determined using bisection. Each time the value is 
found in that position it's value in the matching position dictionary is 
increased by one.
                        
>>> dp
{1: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 2: {1: 59, 2: 59, 3: 59, 
4: 59, 5: 59, 6: 59, 7: 59}, 3: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 
59}, 4: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 5: {1: 59, 2: 59, 3: 
59, 4: 59, 5: 59, 6: 59, 7: 59}, 6: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 
7: 59}, 7: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 8: {1: 59, 2: 59, 
3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 9: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 
59, 7: 59}, 10: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 11: {1: 59, 
2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 12: {1: 59, 2: 59, 3: 59, 4: 59, 5: 
59, 6: 59, 7: 59}, 13: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 14: 
{1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 15: {1: 59, 2: 59, 3: 59, 4: 
59, 5: 59, 6: 59, 7: 59}, 16: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 
59}, 17: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 18: {1: 59, 2: 59, 
3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 19: {1:!
  59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 20: {1: 59, 2: 59, 3: 59, 4: 
59, 5: 59, 6: 59, 7: 59}, 21: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 
59}, 22: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 23: {1: 59, 2: 59, 
3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 24: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 
59, 7: 59}, 25: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 26: {1: 59, 
2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 27: {1: 59, 2: 59, 3: 59, 4: 59, 5: 
59, 6: 59, 7: 59}, 28: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 29: 
{1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 30: {1: 59, 2: 59, 3: 59, 4: 
59, 5: 59, 6: 59, 7: 59}, 31: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 
59}, 32: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 33: {1: 59, 2: 59, 
3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 34: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 
59, 7: 59}, 35: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 36: {1: 59, 
2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 37: {!
 1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 38: {1: 59, 2: 59, 3
: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 39: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 
59, 7: 59}, 40: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 41: {1: 59, 
2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 42: {1: 59, 2: 59, 3: 59, 4: 59, 5: 
59, 6: 59, 7: 59}, 43: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 44: 
{1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}, 45: {1: 59, 2: 59, 3: 59, 4: 
59, 5: 59, 6: 59, 7: 59}, 46: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 
59}, 47: {1: 59, 2: 59, 3: 59, 4: 59, 5: 59, 6: 59, 7: 59}}

#above 59 is shown as the number of occurrences in that position. 59 is the 
number of rows in the list of data. This is not the expected result.

>>> dp_2
{1: {1: 7, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 2: {1: 7, 2: 2, 3: 0, 4: 0, 5: 
0, 6: 0, 7: 0}, 3: {1: 11, 2: 1, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0}, 4: {1: 1, 2: 3, 
3: 1, 4: 0, 5: 0, 6: 0, 7: 0}, 5: {1: 5, 2: 3, 3: 1, 4: 0, 5: 0, 6: 0, 7: 0}, 
6: {1: 4, 2: 1, 3: 1, 4: 1, 5: 0, 6: 0, 7: 0}, 7: {1: 4, 2: 5, 3: 2, 4: 0, 5: 
0, 6: 0, 7: 0}, 8: {1: 7, 2: 1, 3: 1, 4: 0, 5: 0, 6: 0, 7: 0}, 9: {1: 2, 2: 4, 
3: 1, 4: 0, 5: 0, 6: 0, 7: 0}, 10: {1: 5, 2: 5, 3: 2, 4: 2, 5: 0, 6: 0, 7: 0}, 
11: {1: 0, 2: 5, 3: 0, 4: 1, 5: 0, 6: 0, 7: 0}, 12: {1: 1, 2: 1, 3: 2, 4: 1, 5: 
0, 6: 0, 7: 0}, 13: {1: 0, 2: 2, 3: 3, 4: 2, 5: 0, 6: 0, 7: 0}, 14: {1: 1, 2: 
4, 3: 1, 4: 1, 5: 0, 6: 0, 7: 0}, 15: {1: 0, 2: 6, 3: 2, 4: 1, 5: 0, 6: 0, 7: 
0}, 16: {1: 1, 2: 4, 3: 5, 4: 0, 5: 1, 6: 0, 7: 0}, 17: {1: 1, 2: 0, 3: 2, 4: 
1, 5: 0, 6: 0, 7: 0}, 18: {1: 0, 2: 0, 3: 4, 4: 5, 5: 0, 6: 0, 7: 0}, 19: {1: 
0, 2: 3, 3: 3, 4: 2, 5: 2, 6: 0, 7: 0}, 20: {1: 0, 2: 1, 3: 1, 4: 2, 5: 5, 6: 
1, 7: 0}, 21: {1: 1, 2: 3, 3: 2, 4: 4, 5: 2, 6!
 : 0, 7: 0}, 22: {1: 0, 2: 2, 3: 2, 4: 1, 5: 1, 6: 0, 7: 0}, 23: {1: 0, 2: 1, 
3: 6, 4: 6, 5: 0, 6: 2, 7: 0}, 24: {1: 0, 2: 1, 3: 1, 4: 2, 5: 2, 6: 1, 7: 0}, 
25: {1: 1, 2: 0, 3: 4, 4: 4, 5: 0, 6: 1, 7: 0}, 26: {1: 0, 2: 0, 3: 2, 4: 2, 5: 
4, 6: 0, 7: 0}, 27: {1: 0, 2: 0, 3: 3, 4: 1, 5: 7, 6: 0, 7: 0}, 28: {1: 0, 2: 
1, 3: 0, 4: 1, 5: 1, 6: 1, 7: 0}, 29: {1: 0, 2: 0, 3: 2, 4: 4, 5: 3, 6: 1, 7: 
0}, 30: {1: 0, 2: 0, 3: 1, 4: 1, 5: 1, 6: 1, 7: 0}, 31: {1: 0, 2: 0, 3: 1, 4: 
3, 5: 3, 6: 1, 7: 1}, 32: {1: 0, 2: 0, 3: 1, 4: 1, 5: 5, 6: 3, 7: 0}, 33: {1: 
0, 2: 0, 3: 1, 4: 3, 5: 2, 6: 4, 7: 1}, 34: {1: 0, 2: 0, 3: 1, 4: 3, 5: 3, 6: 
4, 7: 1}, 35: {1: 0, 2: 0, 3: 0, 4: 2, 5: 2, 6: 3, 7: 1}, 36: {1: 0, 2: 0, 3: 
0, 4: 0, 5: 3, 6: 4, 7: 2}, 37: {1: 0, 2: 0, 3: 0, 4: 2, 5: 1, 6: 4, 7: 1}, 38: 
{1: 0, 2: 0, 3: 0, 4: 0, 5: 4, 6: 2, 7: 1}, 39: {1: 0, 2: 0, 3: 0, 4: 0, 5: 2, 
6: 2, 7: 2}, 40: {1: 0, 2: 0, 3: 0, 4: 0, 5: 1, 6: 8, 7: 3}, 41: {1: 0, 2: 0, 
3: 0, 4: 0, 5: 1, 6: 3, 7: 4}, 42: {1: 0, 2: 0,!
  3: 0, 4: 0, 5: 1, 6: 4, 7: 5}, 43: {1: 0, 2: 0, 3: 0, 4: 0, 5: 1, 6: 
3, 7: 7}, 44: {1: 0, 2: 0, 3: 0, 4: 0, 5: 1, 6: 3, 7: 7}, 45: {1: 0, 2: 0, 3: 
0, 4: 0, 5: 0, 6: 3, 7: 9}, 46: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 10}, 
47: {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 4}}
#above is the expected result
>>> 
_______________________________________________
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to