Commit 6b59f5f3 authored by Raymond Hettinger's avatar Raymond Hettinger

Let library modules use the new keyword arguments for list.sort().

parent 42b1ba31
...@@ -99,7 +99,7 @@ class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler): ...@@ -99,7 +99,7 @@ class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
except os.error: except os.error:
self.send_error(404, "No permission to list directory") self.send_error(404, "No permission to list directory")
return None return None
list.sort(lambda a, b: cmp(a.lower(), b.lower())) list.sort(key=lambda a: a.lower())
f = StringIO() f = StringIO()
f.write("<title>Directory listing for %s</title>\n" % self.path) f.write("<title>Directory listing for %s</title>\n" % self.path)
f.write("<h2>Directory listing for %s</h2>\n" % self.path) f.write("<h2>Directory listing for %s</h2>\n" % self.path)
......
...@@ -77,7 +77,7 @@ class UserList: ...@@ -77,7 +77,7 @@ class UserList:
def count(self, item): return self.data.count(item) def count(self, item): return self.data.count(item)
def index(self, item, *args): return self.data.index(item, *args) def index(self, item, *args): return self.data.index(item, *args)
def reverse(self): self.data.reverse() def reverse(self): self.data.reverse()
def sort(self, *args): self.data.sort(*args) def sort(self, *args, **kwds): self.data.sort(*args, **kwds)
def extend(self, other): def extend(self, other):
if isinstance(other, UserList): if isinstance(other, UserList):
self.data.extend(other.data) self.data.extend(other.data)
......
...@@ -231,10 +231,8 @@ class TimeRE(dict): ...@@ -231,10 +231,8 @@ class TimeRE(dict):
break break
else: else:
return '' return ''
to_sort = [(len(item), item) for item in to_convert] to_convert = to_convert[:]
to_sort.sort() to_convert.sort(key=len, reverse=True)
to_sort.reverse()
to_convert = [item for length, item in to_sort]
regex = '|'.join(to_convert) regex = '|'.join(to_convert)
regex = '(?P<%s>%s' % (directive, regex) regex = '(?P<%s>%s' % (directive, regex)
return '%s)' % regex return '%s)' % regex
......
...@@ -701,15 +701,11 @@ def get_close_matches(word, possibilities, n=3, cutoff=0.6): ...@@ -701,15 +701,11 @@ def get_close_matches(word, possibilities, n=3, cutoff=0.6):
s.quick_ratio() >= cutoff and \ s.quick_ratio() >= cutoff and \
s.ratio() >= cutoff: s.ratio() >= cutoff:
result.append((s.ratio(), x)) result.append((s.ratio(), x))
# Sort by score.
result.sort()
# Retain only the best n.
result = result[-n:]
# Move best-scorer to head of list.
result.reverse()
# Strip scores.
return [x for score, x in result]
# Move the best scorers to head of list
result.sort(reverse=True)
# Strip scores for the best n matches
return [x for score, x in result[:n]]
def _count_leading(line, ch): def _count_leading(line, ch):
""" """
......
...@@ -553,7 +553,7 @@ def getsource(object): ...@@ -553,7 +553,7 @@ def getsource(object):
def walktree(classes, children, parent): def walktree(classes, children, parent):
"""Recursive helper function for getclasstree().""" """Recursive helper function for getclasstree()."""
results = [] results = []
classes.sort(lambda a, b: cmp(a.__name__, b.__name__)) classes.sort(key=lambda c: c.__name__)
for c in classes: for c in classes:
results.append((c, c.__bases__)) results.append((c, c.__bases__))
if c in children: if c in children:
......
...@@ -779,7 +779,7 @@ class HTMLDoc(Doc): ...@@ -779,7 +779,7 @@ class HTMLDoc(Doc):
tag += ':<br>\n' tag += ':<br>\n'
# Sort attrs by name. # Sort attrs by name.
attrs.sort(lambda t1, t2: cmp(t1[0], t2[0])) attrs.sort(key=lambda t: t[0])
# Pump out the attrs, segregated by kind. # Pump out the attrs, segregated by kind.
attrs = spill('Methods %s' % tag, attrs, attrs = spill('Methods %s' % tag, attrs,
......
...@@ -219,7 +219,7 @@ if __name__ == "__main__": ...@@ -219,7 +219,7 @@ if __name__ == "__main__":
import string import string
def dump(f, d, prefix): def dump(f, d, prefix):
items = d.items() items = d.items()
items.sort(lambda a, b: cmp(a[1], b[1])) items.sort(key=lambda a: a[1])
for k, v in items: for k, v in items:
f.write("#define %s_%s %s\n" % (prefix, string.upper(k), v)) f.write("#define %s_%s %s\n" % (prefix, string.upper(k), v))
f = open("sre_constants.h", "w") f = open("sre_constants.h", "w")
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment