From b7878d09e5d360da4eda65cdf6f51376c234af3d Mon Sep 17 00:00:00 2001 From: "Andrew M. Kuchling" Date: Thu, 24 Apr 2003 17:17:56 +0000 Subject: [PATCH] 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. --- Demo/comparisons/sortingtest.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Demo/comparisons/sortingtest.py b/Demo/comparisons/sortingtest.py index 8fe2bbb7933..cabf6260d9c 100755 --- a/Demo/comparisons/sortingtest.py +++ b/Demo/comparisons/sortingtest.py @@ -23,15 +23,16 @@ # - Outputs the sorted fields with exactly one space between them # - Handles blank input lines correctly -import regex +import re import string import sys def main(): - prog = regex.compile('^\(.*\)=\([-+]?[0-9]+\)') + prog = re.compile('^(.*)=([-+]?[0-9]+)') def makekey(item, prog=prog): - if prog.match(item) >= 0: - var, num = prog.group(1, 2) + match = prog.match(item) + if match: + var, num = match.group(1, 2) return string.atoi(num), var else: # Bad input -- pretend it's a var with value 0 @@ -40,7 +41,7 @@ def main(): line = sys.stdin.readline() if not line: break - items = string.split(line) + items = line.split() items = map(makekey, items) items.sort() for num, var in items: