On 03/13/2015 10:38 AM, Dave Angel wrote:
On 03/13/2015 09:57 AM, Ken G. wrote:
I have been keeping track of numbers drawn in our local lotto drawings
into a list format as shown in a short example below. Using such list, I
am able to determine how often a number appears within the last 100 plus
drawings.
The length of my lists range from 5, 15, 35, 59and 75 long. I will give
an example of one of my short list.
PowerPlay = [0, 0, 61, 32, 11, 14]
Disregarding index 0 and 1, I can see and print the following:
Index Number
2 61
3 32
4 11
5 14
showing that number 2 appears 61 times, number 3 appears 32 times,
number 4 appears 11 times and number 5 appears 14 times within last 100
plus drawings.
How I best rearrange the numbers from high to low with its corresponding
index number such as below:
Number Index
61 2
32 3
14 5
11 4
showing the number 2 appears 61 times, number 3 appears 32 times, number
5 appears 14 times and number 4 appears 11 times. I know that using
MegaBall.reverse()
sort the number from high to low but the index numbers still remain in
the same positions.
Thanks for pointing out the way to do this.
Make a list of tuples by doing something like:
new_list = [ (cnt, index) for index, cnt in enumerate(power_play) ]
to produce:
[ (0, 0), (0, 1), (61, 2), (32, 3), (11, 4), (14, 5) ]
then sort it with reverse=True. When you print it, just omit the
items that have zero as their count. (they'll be at the end, anyway)
Lots of other variants, some more concise. And other approaches might
be cleaner if we change how we generate the list.
(I tried it briefly using Python 3.4)
I will be studying this also. I am still using Python 2.7.6 as that is
the latest as provided by Ubuntu 14.04.1. With thanks to all, I was able
to resolve my request for assistance here in this forum. Thanks Peter.
Ken
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor