Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-10 Thread Bernie Lazlo
On Monday, 9 November 2015 18:53:06 UTC-5, Bernie Lazlo  wrote:
> This should be a simple problem but I have wasted hours on it. Any help would 
> be appreciated. [I have taken my code back to almost the very beginning.]
> 
> The student scores need to be summed.
> 
> import json
> import urllib
> url = "http://www.wickson.net/geography_assignment.json";
> response = urllib.urlopen(url)
> data = json.loads(response.read())
> lst1 = list(data.items())
> print lst1

Pete, thanks for the input. Sometimes it just takes a suggestion to break past 
the "brick wall".
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-10 Thread Bernie Lazlo
On Monday, 9 November 2015 22:54:05 UTC-5, wayne@gmail.com  wrote:
> On Monday, 9 November 2015 22:27:40 UTC-5, Denis McMahon  wrote:
> > On Mon, 09 Nov 2015 15:52:45 -0800, Bernie Lazlo wrote:
> > 
> > > This should be a simple problem but I have wasted hours on it. Any help
> > > would be appreciated. [I have taken my code back to almost the very
> > > beginning.]
> > > 
> > > The student scores need to be summed.
> > > 
> > > import json import urllib url =
> > > "http://www.wickson.net/geography_assignment.json";
> > > response = urllib.urlopen(url)
> > > data = json.loads(response.read())
> > > lst1 = list(data.items())
> > > print lst1
> > 
> > I find that pprint.pprint is useful for looking at data structures.
> > 
> > Having looked at the data, and then using appropriate substitutions for 
> >  and  in the following:
> > 
> > sumscore = 0
> > students = 0
> > 
> > for dic in :
> > sumscore = sumscore + dic[]
> > students += 1
> > 
> > print 'Sum of', students, 'scores is', sumscore
> > print 'Average of', students, 'scores is', sumscore / students
> > 
> > It was trivial to generate:
> > 
> > Sum of 50 scores is 3028
> > Average of 50 scores is 60
> > 
> > -- 
> > Denis McMahon
> =
Thanks for the reply, Denis. I hope this comes as easily to me some day. :-) 
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-10 Thread Pete Dowdell

On 10/11/15 08:12, Bernie Lazlo wrote:

> > import json
> >import urllib
> >url ="http://www.wickson.net/geography_assignment.json";
> >response = urllib.urlopen(url)
> >data = json.loads(response.read())


All good up to data. Now:
# make a list of scores
scores = [d['score'] for d in data['comments']  if 
isinstance(d['score'], int) ]

# analysis
total_scores = sum(scores)
average_score= total_scores/float(len(scores))
min_score, max_score = min(scores), max(scores)

pd
--
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-09 Thread wayne . wickson
On Monday, 9 November 2015 22:27:40 UTC-5, Denis McMahon  wrote:
> On Mon, 09 Nov 2015 15:52:45 -0800, Bernie Lazlo wrote:
> 
> > This should be a simple problem but I have wasted hours on it. Any help
> > would be appreciated. [I have taken my code back to almost the very
> > beginning.]
> > 
> > The student scores need to be summed.
> > 
> > import json import urllib url =
> > "http://www.wickson.net/geography_assignment.json";
> > response = urllib.urlopen(url)
> > data = json.loads(response.read())
> > lst1 = list(data.items())
> > print lst1
> 
> I find that pprint.pprint is useful for looking at data structures.
> 
> Having looked at the data, and then using appropriate substitutions for 
>  and  in the following:
> 
> sumscore = 0
> students = 0
> 
> for dic in :
> sumscore = sumscore + dic[]
> students += 1
> 
> print 'Sum of', students, 'scores is', sumscore
> print 'Average of', students, 'scores is', sumscore / students
> 
> It was trivial to generate:
> 
> Sum of 50 scores is 3028
> Average of 50 scores is 60
> 
> -- 
> Denis McMahon
=
Thanks for the reply, Denis. I hope this comes as easily to me some day. :-)

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-09 Thread Denis McMahon
On Mon, 09 Nov 2015 15:52:45 -0800, Bernie Lazlo wrote:

> This should be a simple problem but I have wasted hours on it. Any help
> would be appreciated. [I have taken my code back to almost the very
> beginning.]
> 
> The student scores need to be summed.
> 
> import json import urllib url =
> "http://www.wickson.net/geography_assignment.json";
> response = urllib.urlopen(url)
> data = json.loads(response.read())
> lst1 = list(data.items())
> print lst1

I find that pprint.pprint is useful for looking at data structures.

Having looked at the data, and then using appropriate substitutions for 
 and  in the following:

sumscore = 0
students = 0

for dic in :
sumscore = sumscore + dic[]
students += 1

print 'Sum of', students, 'scores is', sumscore
print 'Average of', students, 'scores is', sumscore / students

It was trivial to generate:

Sum of 50 scores is 3028
Average of 50 scores is 60

-- 
Denis McMahon, denismfmcma...@gmail.com
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-09 Thread Bernie Lazlo
On Monday, 9 November 2015 18:53:06 UTC-5, Bernie Lazlo  wrote:
> This should be a simple problem but I have wasted hours on it. Any help would 
> be appreciated. [I have taken my code back to almost the very beginning.]
> 
> The student scores need to be summed.
> 
> import json
> import urllib
> url = "http://www.wickson.net/geography_assignment.json";
> response = urllib.urlopen(url)
> data = json.loads(response.read())
> lst1 = list(data.items())
> print lst1
==

Many thanks, MRAB!  :-)
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-09 Thread MRAB

On 2015-11-10 01:53, Bernie Lazlo wrote:

On Monday, 9 November 2015 20:31:52 UTC-5, MRAB  wrote:

On 2015-11-10 01:12, Bernie Lazlo wrote:
> On Monday, 9 November 2015 19:30:23 UTC-5, MRAB  wrote:
>> On 2015-11-09 23:52, Bernie Lazlo wrote:
>> > This should be a simple problem but I have wasted hours on it. Any help 
would be appreciated. [I have taken my code back to almost the very beginning.]
>> > 
>> > The student scores need to be summed.
>> > 
>> > import json
>> > import urllib
>> > url = "http://www.wickson.net/geography_assignment.json";
>> > response = urllib.urlopen(url)
>> > data = json.loads(response.read())
>> > lst1 = list(data.items())
>> > print lst1
>> >
>> Do it a step at a time.
>>
>> It's a list, so start with indexing.
>
> MRAB:
>
> I think of the file as two lists. The second list appears to be a list of tuples containing 
"names" and "scores". How would you index or extract those.
>
Right, so lst1[1] gets you closer to what you want.

Further indexing will get you even closer.

===
lst2 = lst1[1] removes first line of  instructions

printing lst2[1:2] produces essentially the list of students and scores ??

([{u'student ': u'Hannah', u'score': 77}, {u'student ': u'Emily', u'score': 
57}, {u'student ': u'Olivia', u'score': 80}, {u'student ': u'Nora', u'score': 
70},


lst1 is 1 list of 2 items, both of which are tuples. lst1[1] gives you
the second tuple.

That tuple contains 2 items, the first a string and the second a list.
You want the second item, so that's lst1[1][1].

Each of the items in that list is a dict.

--
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-09 Thread Bernie Lazlo
On Monday, 9 November 2015 20:31:52 UTC-5, MRAB  wrote:
> On 2015-11-10 01:12, Bernie Lazlo wrote:
> > On Monday, 9 November 2015 19:30:23 UTC-5, MRAB  wrote:
> >> On 2015-11-09 23:52, Bernie Lazlo wrote:
> >> > This should be a simple problem but I have wasted hours on it. Any help 
> >> > would be appreciated. [I have taken my code back to almost the very 
> >> > beginning.]
> >> > 
> >> > The student scores need to be summed.
> >> > 
> >> > import json
> >> > import urllib
> >> > url = "http://www.wickson.net/geography_assignment.json";
> >> > response = urllib.urlopen(url)
> >> > data = json.loads(response.read())
> >> > lst1 = list(data.items())
> >> > print lst1
> >> >
> >> Do it a step at a time.
> >>
> >> It's a list, so start with indexing.
> >
> > MRAB:
> >
> > I think of the file as two lists. The second list appears to be a list of 
> > tuples containing "names" and "scores". How would you index or extract 
> > those.
> >
> Right, so lst1[1] gets you closer to what you want.
> 
> Further indexing will get you even closer.
===
lst2 = lst1[1] removes first line of  instructions

printing lst2[1:2] produces essentially the list of students and scores ??

([{u'student ': u'Hannah', u'score': 77}, {u'student ': u'Emily', u'score': 
57}, {u'student ': u'Olivia', u'score': 80}, {u'student ': u'Nora', u'score': 
70},
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-09 Thread MRAB

On 2015-11-10 01:12, Bernie Lazlo wrote:

On Monday, 9 November 2015 19:30:23 UTC-5, MRAB  wrote:

On 2015-11-09 23:52, Bernie Lazlo wrote:
> This should be a simple problem but I have wasted hours on it. Any help would 
be appreciated. [I have taken my code back to almost the very beginning.]
> 
> The student scores need to be summed.
> 
> import json
> import urllib
> url = "http://www.wickson.net/geography_assignment.json";
> response = urllib.urlopen(url)
> data = json.loads(response.read())
> lst1 = list(data.items())
> print lst1
>
Do it a step at a time.

It's a list, so start with indexing.


MRAB:

I think of the file as two lists. The second list appears to be a list of tuples containing 
"names" and "scores". How would you index or extract those.


Right, so lst1[1] gets you closer to what you want.

Further indexing will get you even closer.

--
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-09 Thread Bernie Lazlo
On Monday, 9 November 2015 19:30:23 UTC-5, MRAB  wrote:
> On 2015-11-09 23:52, Bernie Lazlo wrote:
> > This should be a simple problem but I have wasted hours on it. Any help 
> > would be appreciated. [I have taken my code back to almost the very 
> > beginning.]
> > 
> > The student scores need to be summed.
> > 
> > import json
> > import urllib
> > url = "http://www.wickson.net/geography_assignment.json";
> > response = urllib.urlopen(url)
> > data = json.loads(response.read())
> > lst1 = list(data.items())
> > print lst1
> >
> Do it a step at a time.
> 
> It's a list, so start with indexing.

MRAB:

I think of the file as two lists. The second list appears to be a list of 
tuples containing "names" and "scores". How would you index or extract those.
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-09 Thread MRAB

On 2015-11-09 23:52, Bernie Lazlo wrote:

This should be a simple problem but I have wasted hours on it. Any help would 
be appreciated. [I have taken my code back to almost the very beginning.]

The student scores need to be summed.

import json
import urllib
url = "http://www.wickson.net/geography_assignment.json";
response = urllib.urlopen(url)
data = json.loads(response.read())
lst1 = list(data.items())
print lst1


Do it a step at a time.

It's a list, so start with indexing.
--
https://mail.python.org/mailman/listinfo/python-list


Extracting and summing student scores from a JSON file using Python 2.7.10

2015-11-09 Thread Bernie Lazlo
This should be a simple problem but I have wasted hours on it. Any help would 
be appreciated. [I have taken my code back to almost the very beginning.]

The student scores need to be summed.

import json
import urllib
url = "http://www.wickson.net/geography_assignment.json";
response = urllib.urlopen(url)
data = json.loads(response.read())
lst1 = list(data.items())
print lst1
-- 
https://mail.python.org/mailman/listinfo/python-list