[Python-checkins] python/dist/src/Demo/comparisons sortingtest.py,1.3,1.4
akuchling@users.sourceforge.net
akuchling@users.sourceforge.net
Thu, 24 Apr 2003 10:17:59 -0700
Update of /cvsroot/python/python/dist/src/Demo/comparisons
In directory sc8-pr-cvs1:/tmp/cvs-serv29060
Modified Files:
sortingtest.py
Log Message:
Modernize the code a bit:
use re module
use .split() string method
Doesn't use 'for line in sys.stdin'; that ends up changing its interactive
behaviour.
Index: sortingtest.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Demo/comparisons/sortingtest.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** sortingtest.py 24 Apr 2003 17:13:18 -0000 1.3
--- sortingtest.py 24 Apr 2003 17:17:56 -0000 1.4
***************
*** 24,36 ****
# - Handles blank input lines correctly
! import regex
import string
import sys
def main():
! prog = regex.compile('^\(.*\)=\([-+]?[0-9]+\)')
def makekey(item, prog=prog):
! if prog.match(item) >= 0:
! var, num = prog.group(1, 2)
return string.atoi(num), var
else:
--- 24,37 ----
# - Handles blank input lines correctly
! import re
import string
import sys
def main():
! prog = re.compile('^(.*)=([-+]?[0-9]+)')
def makekey(item, prog=prog):
! match = prog.match(item)
! if match:
! var, num = match.group(1, 2)
return string.atoi(num), var
else:
***************
*** 41,45 ****
if not line:
break
! items = string.split(line)
items = map(makekey, items)
items.sort()
--- 42,46 ----
if not line:
break
! items = line.split()
items = map(makekey, items)
items.sort()