Merge lp:open-leaderboard-app/1.2 into lp:open-leaderboard-app

Proposed by James-Robert Corken Knight
Status: Merged
Approved by: James-Robert Corken Knight
Approved revision: 5
Merged at revision: 3
Proposed branch: lp:open-leaderboard-app/1.2
Merge into: lp:open-leaderboard-app
Diff against target: 98 lines (+45/-11)
1 file modified
openleaderboardapp.py (+45/-11)
To merge this branch: bzr merge lp:open-leaderboard-app/1.2
Reviewer Review Type Date Requested Status
James-Robert Corken Knight Approve
Review via email: mp+154594@code.launchpad.net

Commit message

Merge with 1.2

Description of the change

Version 1.2 is complete.

To post a comment you must log in.
Revision history for this message
James-Robert Corken Knight (nexxusdrako) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'openleaderboardapp.py'
2--- openleaderboardapp.py 2013-03-21 02:43:32 +0000
3+++ openleaderboardapp.py 2013-03-21 05:45:43 +0000
4@@ -1,5 +1,12 @@
5 leaderboard = {}
6 import cPickle as pickle
7+import os
8+def clearScreen():
9+ """ Clears the screen """
10+ if os.name == "nt":
11+ os.system("cls") # Works in w2k
12+ else:
13+ os.system("clear") # Works in cygwin's Bash
14
15 def average(values):
16 """ Return the average of the values in the list. """
17@@ -38,7 +45,7 @@
18 for key, v in sorted(leaderboard.iteritems(), key=lambda item: -item[1]):
19 for key in leaderboard:
20 if leaderboard[ key ] == v:
21- print key, v
22+ print key + str(v)
23 break
24
25 def saveLeaderboard():
26@@ -54,36 +61,63 @@
27 return avg
28
29 def getStandardDeviation():
30+ """ Gets the standard deviation """
31 stdDev = 0
32 stdDev = standardDeviation(valuesList)
33 return stdDev
34
35+def exportLeaderboard():
36+ """ Exports the leaderboard to a text file """
37+ f = open("leaderboard.txt", "wb")
38+ for key, v in sorted(leaderboard.iteritems(), key=lambda item: -item[1]):
39+ for key in leaderboard:
40+ if leaderboard[ key ] == v:
41+ file.write(f, key + str(v) + "\n")
42+ break
43 choice = 0
44
45 # Main menu
46-while choice != "7":
47+while choice != "8":
48 valuesList = leaderboard.values()
49- choice = str(raw_input("1. Add Score\n2. Show Leaderboard\n3. Save Leaderboard\n4. Load Leaderboard\n5. Delete Leaderboard\n6. Show Statistics\n7. Quit\nEnter choice: "))
50- if choice == "1":
51+ clearScreen()
52+ choice = str(raw_input("1. Add Score\n2. Show Leaderboard\n3. Save Leaderboard\n4. Load Leaderboard\n5. Delete Leaderboard\n6. Show Statistics\n7. Export Leaderboard\n8. Quit\nEnter choice: "))
53+ if choice == "1": # Add Score
54+ clearScreen()
55 askScore()
56+ raw_input("Press enter to continue.")
57 continue
58- elif choice == "2":
59+ elif choice == "2":# Show Leaderboard
60+ clearScreen()
61+ print "Leaderboard:"
62 printLeaderboard()
63+ raw_input("Press enter to continue.")
64 continue
65- elif choice == "3":
66+ elif choice == "3": # Save Leaderboard
67 saveLeaderboard()
68 continue
69- elif choice == "4":
70+ elif choice == "4": # Load Leaderboard
71 f = open("leaderboard.ola", "rb")
72 leaderboard = pickle.load(f)
73 f.close()
74- elif choice == "5":
75+ elif choice == "5": # Delete Leaderboard
76 leaderboard = {}
77 saveLeaderboard()
78- elif choice == "6":
79+ elif choice == "6": # Show Statistics
80+ clearScreen()
81 print "Average:" + str(getAverage()) + "\nStandard Deviation:" + str(getStandardDeviation())
82- elif choice == "7":
83+ raw_input("Press enter to continue.")
84+ continue
85+ elif choice == "7": # Export Leaderboard
86+ exportLeaderboard()
87+ continue
88+ elif choice == "8": # Quit
89+ clearScreen()
90 print "See you soon!"
91- else:
92+ raw_input("Press enter to exit.")
93+ break
94+ else: # Incorrect Input
95+ clearScreen()
96 print "Sorry, I couldn't understand you."
97+ raw_input("Press enter to continue.")
98+ continue
99

Subscribers

People subscribed via source and target branches

to all changes: