From 7542937fa613c5275907bed4e44d09e4f757dae0 Mon Sep 17 00:00:00 2001 From: George Wayne Date: Sat, 20 Oct 2018 15:43:11 -0700 Subject: [PATCH] mega million lotto number generator --- avoid.csv | 918 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ mega.py | 60 ++++ 2 files changed, 978 insertions(+) create mode 100644 avoid.csv create mode 100644 mega.py diff --git a/avoid.csv b/avoid.csv new file mode 100644 index 0000000..b794577 --- /dev/null +++ b/avoid.csv @@ -0,0 +1,918 @@ +65,53,23,15,70,7 +69,45,61,3,49,9 +70,24,46,4,61,7 +54,22,39,20,60,18 +41,32,27,69,28,12 +2,29,34,31,22,1 +39,56,45,52,59,15 +48,32,8,61,16,12 +11,52,64,2,1,9 +43,32,31,63,68,17 +40,66,23,30,43,13 +62,51,15,30,67,19 +8,68,10,54,41,10 +2,25,44,35,7,3 +7,18,45,32,29,17 +33,34,20,3,41,20 +6,1,18,13,49,8 +57,38,19,14,16,11 +47,32,1,56,31,3 +44,26,11,45,46,11 +3,42,22,12,1,6 +13,21,62,2,15,2 +30,60,28,54,9,2 +35,64,15,69,12,9 +49,1,63,40,32,20 +19,2,4,1,29,20 +44,14,30,62,1,1 +61,40,66,67,41,12 +39,22,68,21,59,2 +28,56,70,1,17,14 +56,50,46,2,10,16 +68,13,45,35,49,23 +68,49,32,2,47,23 +39,25,60,29,17,19 +44,11,6,2,27,20 +13,28,11,70,65,14 +37,51,11,1,47,6 +70,3,5,1,8,3 +33,56,30,14,44,13 +48,52,33,41,22,4 +24,52,62,5,66,17 +58,2,67,11,55,2 +68,64,51,11,14,25 +36,16,21,17,48,9 +53,9,26,64,66,11 +44,49,21,61,34,21 +38,14,40,70,53,22 +64,67,39,8,15,13 +10,4,12,18,5,21 +55,70,2,20,7,1 +38,2,63,66,29,11 +48,32,3,19,31,10 +32,45,1,18,15,4 +47,44,34,65,12,22 +8,9,42,32,59,10 +43,31,5,13,53,20 +33,51,67,16,54,20 +39,4,29,62,42,14 +59,46,28,11,31,1 +25,56,7,43,59,13 +59,53,23,4,8,17 +14,38,51,70,64,9 +26,52,33,1,13,11 +6,30,61,60,58,17 +18,46,17,66,7,22 +1,4,39,35,26,22 +60,64,28,24,42,8 +10,38,17,21,43,23 +13,58,11,19,7,9 +24,43,17,19,23,14 +38,48,58,14,53,16 +5,46,15,49,12,1 +28,41,34,47,46,14 +25,14,48,17,58,25 +17,40,4,1,14,4 +29,57,49,42,41,24 +27,38,43,16,10,1 +31,30,55,6,2,7 +49,3,23,66,17,23 +3,29,59,23,11,18 +46,17,33,60,18,24 +16,29,67,31,65,23 +70,59,30,28,39,10 +1,42,64,47,70,22 +28,4,10,62,18,7 +41,12,10,38,20,25 +30,33,42,1,20,16 +37,39,58,28,42,2 +4,44,57,36,12,19 +24,25,23,27,8,9 +46,6,60,37,70,24 +15,42,67,14,37,22 +41,22,59,40,16,8 +10,47,17,51,61,5 +16,36,54,61,64,22 +16,36,54,61,64,22 +7,3,27,50,22,3 +26,55,70,58,3,15 +14,1,21,22,28,19 +6,38,42,23,58,24 +1,68,69,60,54,11 +69,10,61,42,22,3 +31,53,6,28,52,12 +51,41,27,52,17,13 +24,64,34,56,20,6 +63,6,73,66,23,9 +49,70,56,31,45,11 +31,7,26,2,18,12 +16,7,61,62,24,2 +33,56,21,45,36,12 +25,18,19,12,67,7 +62,73,74,51,25,7 +10,66,1,75,57,4 +63,39,54,5,66,15 +9,61,50,28,31,10 +38,34,18,58,24,3 +37,65,26,54,41,3 +4,73,14,26,5,14 +17,59,70,11,72,1 +64,13,4,50,31,12 +17,73,2,13,35,3 +65,51,38,42,17,11 +51,24,46,35,50,7 +31,40,1,75,34,6 +7,20,16,73,66,7 +56,23,58,33,53,6 +11,17,50,52,74,14 +25,17,71,9,63,4 +52,20,22,57,73,7 +4,31,6,49,52,11 +58,5,60,26,2,6 +18,31,50,36,74,10 +73,51,8,23,12,6 +73,24,12,11,32,1 +55,74,7,24,18,10 +60,28,9,11,2,10 +53,16,39,71,47,15 +10,55,51,38,64,6 +4,57,21,45,52,14 +20,12,66,74,53,11 +63,41,2,49,15,3 +18,26,44,30,22,9 +62,51,75,68,27,8 +33,37,16,3,28,9 +49,75,16,3,5,5 +72,7,57,42,69,10 +32,37,20,5,67,5 +56,26,28,25,37,5 +33,6,17,60,13,14 +5,24,4,30,1,1 +56,35,4,72,39,11 +42,47,28,34,41,13 +6,45,73,69,29,11 +47,23,53,33,4,7 +43,42,5,58,14,1 +18,6,13,20,31,13 +3,50,13,40,33,2 +1,12,32,34,13,10 +64,29,8,43,30,6 +73,5,10,60,55,12 +34,38,35,49,19,8 +43,69,33,47,30,15 +35,24,13,34,55,9 +32,27,58,17,24,10 +35,30,46,37,33,10 +37,69,61,28,5,1 +45,4,53,75,73,7 +58,31,11,27,60,10 +16,59,33,28,23,13 +38,42,70,26,58,5 +30,68,3,53,45,11 +48,14,26,51,39,9 +33,69,58,45,20,4 +68,29,12,42,33,14 +32,75,30,21,9,9 +67,4,75,56,58,8 +7,11,68,60,33,15 +32,39,51,62,75,14 +28,37,23,71,56,12 +3,30,6,64,29,3 +3,27,14,72,62,4 +61,53,54,17,37,8 +54,67,42,63,8,11 +41,24,7,53,9,14 +20,54,59,31,56,3 +74,58,10,44,75,11 +41,11,40,59,20,15 +10,47,54,6,44,6 +49,16,14,23,53,12 +6,43,33,39,21,2 +30,2,39,28,38,11 +60,69,39,30,21,15 +12,48,65,1,14,2 +1,43,36,15,8,6 +41,34,2,26,15,14 +47,68,19,27,67,1 +13,34,48,53,63,12 +49,3,51,33,35,1 +51,33,49,59,22,8 +69,44,75,47,49,10 +45,69,1,66,43,7 +31,32,49,55,58,15 +23,57,71,9,17,6 +40,16,53,59,47,11 +48,74,46,53,61,12 +29,32,10,46,44,10 +39,19,31,24,45,13 +38,66,7,46,57,2 +24,49,67,9,8,13 +44,48,12,43,66,3 +24,7,74,28,65,1 +64,74,27,60,7,5 +42,45,39,48,36,3 +42,65,37,50,24,14 +54,30,29,66,18,1 +50,21,57,47,30,9 +16,53,72,14,26,4 +8,62,5,1,25,14 +2,62,34,22,72,2 +40,34,13,21,28,15 +6,17,39,15,56,15 +43,1,34,63,44,11 +37,69,58,75,25,8 +28,41,22,60,46,3 +32,51,71,41,28,11 +41,44,31,11,10,14 +61,7,46,2,66,1 +73,65,22,37,45,13 +43,2,62,63,52,6 +41,56,4,44,69,10 +12,20,66,44,19,1 +5,54,28,18,74,6 +12,70,36,3,54,12 +31,19,11,16,48,4 +4,36,1,54,31,9 +8,24,25,26,30,7 +65,34,54,66,3,4 +58,51,16,52,56,4 +22,8,6,46,68,4 +20,19,55,73,8,5 +29,64,46,53,73,10 +49,45,20,42,41,14 +55,17,15,20,35,7 +54,57,63,14,11,11 +49,50,13,6,21,10 +59,20,23,30,44,9 +37,52,36,38,62,6 +34,66,67,68,61,7 +72,65,51,25,48,4 +32,71,54,66,65,10 +9,41,49,31,34,8 +41,50,70,18,68,9 +70,50,11,51,75,15 +26,24,19,68,40,8 +48,27,75,17,24,6 +66,20,54,38,21,7 +56,74,22,46,12,4 +32,26,14,27,36,7 +28,36,45,33,29,15 +5,37,74,6,55,10 +16,14,48,17,28,2 +19,42,60,21,2,13 +28,9,40,57,65,2 +37,10,34,73,9,9 +59,7,62,63,11,3 +38,52,71,65,31,15 +57,53,13,45,52,10 +41,69,25,28,33,6 +38,40,46,33,49,15 +35,11,12,46,4,12 +34,6,19,70,38,5 +73,57,59,8,5,13 +30,26,68,18,44,7 +71,14,54,18,48,13 +37,66,27,69,54,5 +26,48,73,21,33,14 +55,33,34,29,1,6 +74,15,19,3,62,14 +39,53,16,32,57,10 +27,50,41,2,75,4 +64,31,33,9,46,4 +68,44,1,7,73,1 +71,56,3,46,42,13 +23,4,75,6,55,2 +7,25,70,51,13,9 +28,51,20,52,49,6 +14,27,39,50,69,2 +56,25,46,21,40,3 +47,2,39,17,31,9 +53,70,41,29,54,12 +29,15,48,31,27,15 +51,39,11,57,75,2 +36,57,1,48,4,13 +18,37,39,7,38,9 +55,20,74,25,62,7 +15,44,25,29,51,4 +70,21,50,11,40,15 +28,62,6,23,24,7 +47,25,61,51,18,5 +14,43,69,54,20,5 +7,17,37,73,49,15 +61,42,73,26,47,6 +7,25,50,5,59,12 +59,20,39,16,56,12 +38,19,2,30,70,8 +12,67,29,37,9,15 +12,18,14,61,24,10 +17,31,18,59,35,9 +8,45,17,71,20,4 +50,72,35,31,10,8 +44,16,69,29,74,12 +17,56,53,51,41,15 +27,9,29,74,26,4 +25,70,45,32,37,1 +52,35,6,38,25,4 +48,2,61,38,68,4 +52,38,9,7,24,1 +8,63,75,9,21,14 +17,63,58,66,64,13 +4,47,29,14,31,9 +21,62,8,61,30,9 +51,8,38,3,64,4 +30,38,51,28,45,8 +17,35,34,65,51,7 +35,56,49,7,20,9 +31,5,50,67,11,14 +20,36,46,41,19,7 +21,52,17,39,57,5 +40,54,5,35,2,13 +40,68,13,60,35,9 +59,44,54,63,5,1 +21,15,13,72,41,1 +2,39,7,53,33,9 +52,12,15,71,20,3 +3,8,29,57,68,8 +66,53,38,1,63,10 +51,19,44,2,57,14 +33,32,46,28,40,10 +75,35,68,61,8,15 +10,62,60,26,12,13 +74,30,20,65,62,1 +30,6,31,41,17,15 +35,24,72,19,30,5 +35,24,72,19,30,5 +24,27,54,45,51,8 +6,49,16,28,15,14 +33,50,64,71,72,9 +43,34,17,11,50,15 +33,12,50,47,23,3 +38,70,56,13,6,2 +4,52,36,68,35,8 +56,26,67,19,8,14 +42,40,56,62,1,2 +17,16,6,25,36,7 +49,7,27,41,22,10 +2,11,22,9,23,12 +49,38,66,20,27,2 +49,38,66,20,27,2 +72,52,69,39,1,12 +48,15,25,14,3,8 +65,10,21,29,12,10 +36,11,17,21,74,15 +44,30,14,36,33,2 +25,21,9,66,72,7 +21,42,62,11,71,7 +61,66,18,17,74,3 +63,27,58,22,55,11 +24,67,47,25,29,4 +35,69,41,31,33,11 +50,18,29,41,15,5 +68,7,71,25,3,3 +68,6,11,32,46,9 +22,15,26,5,64,6 +10,74,63,36,47,2 +26,61,41,73,8,11 +58,17,70,36,21,3 +23,2,45,55,32,12 +7,54,61,75,50,7 +44,45,11,58,27,3 +42,45,8,30,22,3 +73,10,30,14,19,14 +55,73,30,48,68,5 +11,9,44,50,42,3 +60,53,7,64,49,4 +23,26,66,15,45,4 +8,2,6,66,52,13 +50,66,45,65,6,1 +4,74,44,20,65,14 +42,58,71,7,53,15 +6,68,33,17,5,13 +25,22,69,11,58,13 +18,31,39,45,55,6 +44,5,57,27,26,7 +68,72,15,32,14,8 +63,56,35,31,59,6 +26,32,44,58,45,11 +20,50,12,51,25,7 +37,56,50,49,57,8 +20,12,27,38,75,4 +35,15,62,74,13,12 +63,3,67,44,7,12 +2,5,10,20,38,14 +31,56,66,10,4,7 +59,58,14,68,18,4 +68,58,41,72,73,1 +58,46,65,31,2,7 +45,52,49,27,51,14 +59,5,11,51,4,5 +49,18,13,22,62,11 +47,26,29,8,36,10 +29,10,47,11,56,4 +37,63,3,12,35,15 +53,68,39,37,75,6 +68,62,49,3,61,15 +28,75,23,30,25,11 +66,35,31,41,65,5 +15,24,41,9,39,1 +67,11,58,36,29,15 +3,57,60,50,58,11 +2,55,21,28,14,3 +41,5,35,66,37,11 +60,31,43,56,21,12 +46,37,64,11,68,15 +32,59,35,2,50,3 +46,55,29,48,16,2 +20,58,3,34,67,6 +61,52,54,16,3,6 +26,35,62,17,46,9 +43,21,24,40,25,12 +16,34,25,29,27,2 +73,51,53,25,45,2 +36,18,28,33,42,7 +70,55,25,34,71,1 +12,24,7,20,59,7 +72,69,8,1,54,1 +58,73,26,3,45,12 +31,64,60,29,51,1 +31,34,5,74,41,3 +71,22,67,39,56,15 +28,19,29,16,68,9 +63,32,53,60,68,6 +9,70,61,16,75,7 +53,28,45,36,25,6 +13,34,72,37,29,6 +2,16,43,74,8,1 +33,29,41,68,22,12 +31,47,22,14,18,15 +5,59,65,8,72,3 +40,2,17,4,36,5 +13,9,30,35,69,10 +48,27,25,49,14,9 +58,33,39,16,69,2 +9,47,38,49,22,15 +46,64,29,15,31,10 +65,47,24,17,13,10 +25,1,56,29,22,3 +24,60,14,10,47,3 +7,46,38,49,56,1 +74,10,24,2,26,7 +49,37,12,72,29,9 +62,19,66,74,28,6 +42,10,13,43,62,2 +1,46,58,10,6,13 +21,70,14,38,12,15 +40,64,63,10,69,7 +56,14,13,16,50,11 +46,48,37,70,74,1 +39,10,59,28,51,14 +18,51,48,27,20,5 +18,1,35,26,40,13 +61,66,43,59,7,3 +11,66,18,20,3,9 +18,49,2,50,19,1 +45,18,25,38,63,9 +39,4,70,46,47,13 +3,44,42,47,57,8 +35,71,36,41,60,3 +15,10,54,1,41,9 +68,23,74,10,75,9 +2,9,50,3,73,12 +19,57,51,26,73,15 +2,23,30,35,53,10 +51,24,11,33,19,7 +7,69,54,20,40,12 +56,14,9,69,57,10 +51,11,69,57,13,1 +10,35,31,45,29,10 +50,31,59,58,3,6 +66,35,18,12,25,15 +45,23,46,29,32,15 +70,31,29,23,37,14 +20,35,28,71,72,7 +67,64,43,71,73,4 +64,35,11,23,21,10 +60,25,73,44,49,9 +9,13,47,3,52,8 +16,53,60,28,7,2 +46,65,45,47,22,10 +45,33,8,52,23,4 +1,10,31,26,51,11 +4,69,23,26,62,13 +8,37,36,57,28,8 +13,34,64,62,56,6 +25,70,24,22,40,5 +58,12,8,52,34,8 +4,48,15,49,35,11 +73,53,58,34,23,2 +49,3,31,4,57,6 +8,20,14,17,39,7 +27,26,24,19,70,12 +65,22,41,5,12,13 +64,11,44,63,29,3 +12,41,7,44,59,3 +41,9,43,57,47,5 +74,59,27,44,75,3 +44,23,36,35,17,8 +14,63,49,29,15,2 +54,63,49,44,25,8 +20,71,32,42,30,15 +41,42,65,51,57,7 +74,11,2,64,42,2 +49,35,32,62,67,1 +54,53,33,50,20,7 +45,16,60,54,6,15 +3,2,19,71,52,14 +5,45,20,56,48,1 +4,43,30,23,50,11 +48,45,37,3,27,46 +19,23,15,6,40,5 +25,44,4,16,24,5 +53,30,10,37,7,1 +27,23,49,51,9,38 +4,39,32,11,40,33 +15,20,21,1,47,34 +15,6,39,27,31,25 +48,9,28,54,22,8 +12,2,54,56,18,1 +2,17,41,16,22,31 +28,4,41,14,13,28 +6,43,24,44,19,33 +7,4,36,38,30,38 +1,53,17,20,9,14 +13,35,38,28,41,33 +13,26,46,7,36,37 +2,41,37,31,32,40 +34,11,38,30,20,12 +11,51,55,1,16,41 +39,8,21,23,25,4 +25,27,44,42,36,39 +22,4,27,23,38,42 +51,32,25,50,35,46 +16,24,39,20,42,46 +14,53,21,40,10,20 +5,27,51,25,4,10 +21,43,3,48,45,14 +23,41,47,54,2,42 +52,53,42,36,51,40 +8,52,46,35,15,38 +3,5,28,33,51,16 +3,14,17,40,50,3 +6,17,34,48,40,30 +2,34,5,31,33,20 +45,40,15,50,53,28 +37,1,55,48,10,21 +11,20,55,10,12,19 +44,26,20,46,2,26 +25,4,32,54,12,36 +4,16,5,53,18,28 +55,15,48,2,17,11 +35,11,49,43,15,41 +12,32,6,28,10,38 +20,49,1,39,19,28 +1,20,13,51,6,31 +54,2,42,34,20,39 +49,39,21,34,30,43 +17,54,42,55,49,31 +21,50,22,9,32,10 +8,6,22,43,12,28 +2,39,18,15,5,42 +10,21,13,19,1,28 +54,17,30,41,48,13 +23,36,15,8,41,5 +47,10,40,14,7,34 +25,31,46,53,36,21 +51,33,49,46,20,46 +14,41,34,37,27,38 +3,37,6,21,14,35 +8,22,4,32,17,8 +9,12,19,30,20,39 +25,11,4,35,34,44 +46,39,20,6,41,42 +51,43,30,17,38,20 +6,7,13,43,15,7 +13,38,9,49,24,30 +15,30,1,19,56,28 +11,42,35,44,41,42 +9,38,55,32,22,44 +20,39,15,50,6,5 +44,26,10,5,2,46 +41,1,32,30,40,17 +27,47,12,46,8,6 +11,17,31,48,12,1 +16,39,7,54,11,13 +42,49,8,18,25,14 +19,1,41,12,6,14 +29,56,24,34,30,1 +3,38,20,21,42,19 +2,23,55,25,1,39 +11,21,4,44,25,29 +10,41,32,13,40,32 +2,48,3,18,34,36 +32,18,3,41,56,19 +7,18,29,1,6,16 +41,28,11,33,43,41 +44,54,39,52,51,13 +43,7,44,51,56,4 +19,32,3,43,24,44 +24,31,28,11,22,46 +42,26,12,5,49,24 +42,26,12,5,49,24 +47,37,8,44,48,27 +9,52,13,22,38,44 +9,52,13,22,38,44 +26,5,24,53,29,36 +12,31,6,46,56,34 +35,18,40,33,22,11 +35,32,3,5,13,6 +38,18,4,44,22,24 +29,5,12,56,18,38 +36,4,24,40,15,44 +42,55,17,1,46,1 +14,48,36,34,53,42 +37,46,52,13,40,29 +26,24,10,6,42,15 +22,15,6,16,37,3 +9,16,32,8,39,15 +55,20,11,10,42,9 +6,14,28,56,43,28 +6,14,8,56,43,28 +50,51,23,8,7,26 +13,55,3,14,46,34 +9,5,22,49,36,36 +40,21,51,16,17,20 +20,5,33,36,11,11 +32,42,15,46,38,31 +41,39,53,32,16,16 +40,47,48,31,41,45 +9,50,40,45,4,39 +45,34,46,25,49,34 +5,33,13,23,20,30 +56,35,20,24,8,24 +15,34,39,23,55,32 +10,38,36,44,18,8 +48,33,30,32,42,7 +46,38,10,2,13,2 +21,29,5,18,41,37 +43,8,4,2,3,26 +46,5,51,9,38,5 +50,2,44,48,52,3 +21,1,49,55,13,17 +24,13,46,6,7,34 +36,3,11,19,23,21 +28,35,39,23,20,21 +52,36,24,4,3,45 +39,34,45,28,53,34 +36,23,3,16,35,20 +19,32,10,36,16,13 +53,11,30,27,21,11 +18,8,12,30,40,4 +9,17,50,2,34,45 +9,4,34,48,40,25 +37,39,55,53,42,22 +2,52,46,38,27,45 +2,53,55,29,14,31 +54,15,40,21,9,11 +14,43,35,52,10,16 +49,34,22,11,3,1 +10,12,14,24,11,6 +15,35,3,29,54,8 +2,6,8,51,18,19 +21,4,53,42,11,38 +45,27,52,31,24,38 +5,47,2,46,45,37 +38,15,3,9,37,39 +33,26,14,35,23,40 +32,24,48,1,16,2 +9,17,42,36,14,33 +48,31,6,2,12,25 +20,19,33,2,24,39 +38,11,35,52,41,40 +46,23,38,4,2,23 +19,44,34,9,51,24 +19,17,6,20,21,20 +6,11,14,4,1,30 +43,51,53,29,28,7 +30,2,8,48,36,31 +42,9,27,10,36,11 +31,24,20,33,36,44 +48,29,52,54,16,5 +51,15,39,29,6,36 +27,1,16,25,18,3 +9,39,42,30,47,37 +16,25,28,32,40,3 +3,27,5,10,26,27 +4,50,18,3,29,20 +37,45,17,30,23,4 +7,49,19,21,53,35 +9,18,28,43,17,9 +5,3,30,36,48,23 +10,49,22,36,24,33 +38,47,28,9,1,8 +15,53,31,3,36,27 +10,27,28,51,37,19 +10,48,38,4,16,34 +9,17,28,34,48,46 +15,36,2,3,22,23 +45,24,52,4,46,1 +32,43,23,33,39,8 +8,3,5,29,18,14 +8,3,5,29,18,14 +24,45,51,27,20,31 +2,4,39,36,26,27 +6,41,26,22,5,6 +12,29,49,4,51,44 +7,49,21,35,29,39 +48,24,51,56,30,45 +52,48,29,43,17,36 +28,42,22,54,49,43 +33,23,4,48,16,38 +55,33,4,13,39,3 +6,24,33,30,3,21 +29,16,50,2,22,27 +31,45,54,47,5,4 +30,33,26,44,32,1 +39,31,46,40,27,36 +52,56,49,31,13,41 +44,40,46,13,33,8 +6,37,35,38,21,17 +24,53,25,47,45,42 +42,54,45,35,13,26 +25,44,34,56,38,27 +15,5,38,19,23,19 +40,3,26,52,45,11 +19,45,21,3,44,29 +20,2,36,28,45,37 +27,32,52,40,21,36 +38,29,51,50,6,39 +41,23,45,6,56,24 +22,56,48,43,31,45 +31,12,23,19,7,45 +38,49,1,36,42,19 +44,48,55,25,49,20 +22,50,2,28,25,18 +27,47,30,2,3,36 +21,44,49,48,11,23 +53,56,54,15,5,22 +42,41,43,38,4,44 +51,54,55,43,9,13 +19,54,45,11,39,15 +42,24,28,6,33,19 +17,19,14,32,20,28 +8,22,47,10,48,35 +52,35,55,20,25,10 +56,31,39,32,23,38 +2,16,9,10,35,40 +2,16,9,10,35,40 +46,56,16,30,29,6 +11,49,44,3,9,9 +22,2,1,37,50,45 +46,10,13,1,18,19 +30,12,47,35,17,26 +47,27,12,48,17,33 +40,49,14,10,51,4 +46,24,25,11,31,17 +47,46,29,12,51,24 +9,10,20,51,53,24 +18,27,38,37,21,7 +32,29,35,47,52,13 +49,41,53,20,23,31 +28,55,31,30,37,13 +28,7,5,56,14,10 +12,43,9,42,21,42 +45,17,48,10,19,30 +1,2,25,17,48,45 +53,47,39,3,33,9 +40,16,11,51,34,34 +26,37,41,6,18,9 +36,1,16,50,29,16 +9,51,33,11,10,29 +19,55,32,29,38,15 +53,3,18,51,46,17 +20,51,32,45,24,43 +23,22,48,39,33,29 +45,23,10,39,41,15 +56,45,6,40,50,11 +20,1,31,19,36,9 +13,35,53,14,36,19 +38,6,23,34,15,43 +22,54,24,31,52,4 +14,1,53,50,35,43 +56,14,54,34,33,37 +10,28,12,11,43,45 +42,14,45,19,21,6 +41,55,19,17,3,24 +10,8,15,23,41,7 +19,1,12,20,47,25 +4,19,17,5,50,7 +15,48,23,55,22,31 +45,30,5,6,7,42 +17,39,35,24,18,18 +32,8,34,17,9,13 +47,48,35,36,25,18 +6,29,55,48,20,6 +16,23,35,26,22,31 +33,48,50,49,14,18 +8,50,31,5,46,4 +21,35,5,9,38,20 +38,4,27,29,45,5 +35,33,17,2,15,8 +45,4,16,1,11,37 +4,46,22,42,53,20 +15,47,4,25,8,42 +56,13,12,35,10,9 +36,49,18,6,40,7 +16,15,52,40,27,16 +8,32,31,11,12,29 +26,46,11,20,53,12 +18,38,25,31,22,29 +44,46,23,33,27,36 +53,4,45,38,54,9 +18,56,6,12,11,12 +16,19,53,47,11,2 +43,9,34,5,47,8 +2,35,6,12,34,33 +7,14,31,51,54,35 +26,39,46,1,27,21 +38,35,28,26,9,10 +53,28,26,8,33,11 +46,19,34,25,53,15 +54,16,1,12,3,46 +28,19,39,26,4,14 +32,21,31,15,30,26 +53,18,7,2,32,18 +42,2,9,14,37,41 +31,10,9,50,13,10 +36,43,31,37,10,15 +37,29,48,24,50,19 +10,19,44,37,24,27 +3,52,28,8,21,43 +38,10,2,13,36,18 +55,28,38,2,42,25 +43,52,47,3,20,26 +14,27,18,4,3,13 +55,50,6,56,14,1 +17,11,23,12,21,20 +8,38,18,22,24,23 +13,28,20,36,10,9 +20,29,10,48,47,38 +4,10,26,32,41,31 +28,4,23,32,24,31 +4,13,20,29,48,36 +40,19,11,43,44,33 +24,6,43,55,17,36 +2,26,50,14,56,12 +13,30,7,54,33,30 +22,56,13,20,4,32 +11,40,48,52,30,42 +10,7,16,2,29,8 +39,16,49,19,44,26 +28,43,12,36,18,19 +2,18,20,39,15,34 +14,7,11,15,34,14 +1,31,33,34,50,41 +8,18,45,47,50,36 +12,36,1,32,10,25 +15,27,37,3,4,35 +1,2,27,19,13,21 +23,21,17,12,30,24 +55,37,36,41,11,7 +21,12,13,4,27,46 +33,42,6,34,13,25 +48,12,54,28,18,6 +17,50,12,15,13,23 +12,27,51,44,45,30 +29,20,39,3,11,26 +14,24,5,19,17,25 +30,23,15,20,26,17 +11,37,13,40,19,26 +47,21,56,40,20,12 +26,54,43,33,46,9 +7,50,2,20,34,40 +21,9,36,43,31,8 +41,14,20,47,53,40 +50,41,37,23,55,6 +52,26,28,37,19,18 +10,34,8,5,42,25 +48,50,10,31,16,44 +47,39,12,3,27,32 +39,15,18,48,53,3 +52,43,16,44,56,26 +22,2,30,31,17,19 +11,24,44,38,1,41 +47,46,23,52,41,22 +3,25,40,29,28,13 +50,31,10,45,54,25 +48,22,56,52,3,13 +53,2,48,25,15,41 +18,19,16,29,14,16 +11,34,44,31,52,32 +48,47,9,12,56,25 +54,56,14,4,29,40 +40,4,16,53,36,18 +42,46,39,1,22,36 +45,12,21,29,11,5 +17,47,16,14,33,23 +48,17,26,2,20,12 +10,53,20,51,45,41 +6,49,7,27,26,9 diff --git a/mega.py b/mega.py new file mode 100644 index 0000000..b594280 --- /dev/null +++ b/mega.py @@ -0,0 +1,60 @@ +#! /usr/bin/env python3 + +# Generate one random mega million lotto number that is not an avoided number in the avoid.csv file. +# It simply redraw a number if the previous drawn number is an avoided number. + +import secrets +import logging +import csv + +def meganumber(): + + picks = [] + # the mega million valid numbers are between 1 to 70 inclusive + choices = list(range(1,71)) + + for i in range(5): + logging.debug("choices are: %s", choices) + pick = secrets.choice(choices) + choices.remove(pick) + picks.append(pick) + + logging.debug("choices left: %s", choices) + logging.debug("first five numbers: %s", picks) + picks.sort() + + # the mega ball number is from 1 to 25 + pick = secrets.choice(list(range(1,26))) + picks.append(pick) + + return picks + +def main(): + + # logging.basicConfig(level=logging.DEBUG, format = "[%(levelname)s] (%(threadName)-10s) %(message)s",) + logging.basicConfig(level=logging.INFO, format = "[%(levelname)s] (%(threadName)-10s) %(message)s",) + + avoid = [] + with open("avoid.csv", "r") as f: + reader = csv.reader(f) + for row in reader: + introw = [] + for num in row: + introw.append(int(num)) + avoid.append(introw) + + for item in avoid: + logging.debug("before: %s", item) + item[0:5] = sorted(item[0:5]) + logging.debug("after: %s", item) + + pickone = meganumber() + while pickone in avoid: + print("the picked number is in the avoid list: %s, regenerate", pickone) + pickone = meganumber() + + print(pickone) + + +if __name__ == "__main__": + main()