diff --git a/Demo/scripts/README b/Demo/scripts/README
index 8e1b26f..434c09b 100644
--- a/Demo/scripts/README
+++ b/Demo/scripts/README
@@ -2,7 +2,7 @@
 
 See also the Tools/scripts directory!
 
-beer.py			Print the classic 'bottles of beer' list.
+beer.py			Print the classic 'bottles of beer' list
 eqfix.py		Fix .py files to use the correct equality test operator
 fact.py			Factorize numbers
 find-uname.py		Search for Unicode characters using regexps
diff --git a/Demo/scripts/primes.py b/Demo/scripts/primes.py
index 5935a3c..eeb14ee 100755
--- a/Demo/scripts/primes.py
+++ b/Demo/scripts/primes.py
@@ -2,26 +2,29 @@
 
 # Print prime numbers in a given range
 
-def main():
-    import sys
-    min, max = 2, 0x7fffffff
-    if sys.argv[1:]:
-        min = int(eval(sys.argv[1]))
-        if sys.argv[2:]:
-            max = int(eval(sys.argv[2]))
-    primes(min, max)
-
 def primes(min, max):
-    if 2 >= min: print 2
+    if 2 >= min:
+        print 2
     primes = [2]
     i = 3
     while i <= max:
         for p in primes:
-            if i%p == 0 or p*p > i: break
-        if i%p <> 0:
+            if i % p == 0 or p*p > i:
+                break
+        if i % p != 0:
             primes.append(i)
-            if i >= min: print i
-        i = i+2
+            if i >= min:
+                print i
+        i += 2
+
+def main():
+    import sys
+    min, max = 2, 0x7fffffff
+    if sys.argv[1:]:
+        min = int(sys.argv[1])
+        if sys.argv[2:]:
+            max = int(sys.argv[2])
+    primes(min, max)
 
 if __name__ == "__main__":
     main()
