From fc170b1fd5db978f4e8d4c23c138a7b59df681ec Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Fri, 9 Feb 2001 11:51:27 +0000 Subject: String method conversion. --- Lib/distutils/cmd.py | 6 +++--- Lib/lib-old/codehack.py | 2 +- Lib/lib-old/grep.py | 3 +-- Lib/lib-old/ni.py | 17 ++++++++--------- Lib/lib-old/packmail.py | 3 +-- Lib/lib-old/tb.py | 11 +++++------ Lib/lib-tk/Tkinter.py | 12 +++++------- Lib/lib-tk/tkFont.py | 7 +++---- Lib/lib-tk/tkSimpleDialog.py | 6 ++---- Lib/sre_parse.py | 30 ++++++++++++------------------ Lib/test/regrtest.py | 7 +++---- Lib/test/sortperf.py | 5 ++--- Lib/test/string_tests.py | 4 ++-- Lib/test/test_dospath.py | 3 +-- Lib/test/test_extcall.py | 3 +-- Lib/test/test_imgfile.py | 5 ++--- Lib/test/test_mmap.py | 6 +++--- Lib/test/test_ntpath.py | 3 +-- Lib/test/test_pkg.py | 4 ++-- 19 files changed, 58 insertions(+), 79 deletions(-) diff --git a/Lib/distutils/cmd.py b/Lib/distutils/cmd.py index ce44829..cec4bff 100644 --- a/Lib/distutils/cmd.py +++ b/Lib/distutils/cmd.py @@ -9,7 +9,7 @@ in the distutils.command package. __revision__ = "$Id$" -import sys, os, string, re +import sys, os, re from types import * from distutils.errors import * from distutils import util, dir_util, file_util, archive_util, dep_util @@ -161,7 +161,7 @@ class Command: print indent + header indent = indent + " " for (option, _, _) in self.user_options: - option = string.translate(option, longopt_xlate) + option = option.translate(longopt_xlate) if option[-1] == "=": option = option[:-1] value = getattr(self, option) @@ -421,7 +421,7 @@ class Command: """ if exec_msg is None: exec_msg = "generating %s from %s" % \ - (outfile, string.join(infiles, ', ')) + (outfile, ', '.join(infiles)) if skip_msg is None: skip_msg = "skipping %s (inputs unchanged)" % outfile diff --git a/Lib/lib-old/codehack.py b/Lib/lib-old/codehack.py index 6453db5..52ac6be 100644 --- a/Lib/lib-old/codehack.py +++ b/Lib/lib-old/codehack.py @@ -48,7 +48,7 @@ def getcodename(co): if ord(code[0]) == SET_LINENO: lineno = ord(code[1]) | ord(code[2]) << 8 line = linecache.getline(filename, lineno) - words = string.split(line) + words = line.split() if len(words) >= 2 and words[0] in ('def', 'class'): name = words[1] for i in range(len(name)): diff --git a/Lib/lib-old/grep.py b/Lib/lib-old/grep.py index 6f74fd3..6f66081 100644 --- a/Lib/lib-old/grep.py +++ b/Lib/lib-old/grep.py @@ -2,7 +2,6 @@ import regex from regex_syntax import * -import string opt_show_where = 0 opt_show_filename = 0 @@ -59,7 +58,7 @@ def pgrep(pat, *files): def showline(filename, lineno, line, prog): if line[-1:] == '\n': line = line[:-1] if opt_show_lineno: - prefix = string.rjust(`lineno`, 3) + ': ' + prefix = `lineno`.rjust(, 3) + ': ' else: prefix = '' if opt_show_filename: diff --git a/Lib/lib-old/ni.py b/Lib/lib-old/ni.py index 4a06f59..074f989 100644 --- a/Lib/lib-old/ni.py +++ b/Lib/lib-old/ni.py @@ -163,7 +163,6 @@ XXX Need to have an explicit name for '', e.g. '__root__'. import imp -import string import sys import __builtin__ @@ -206,7 +205,7 @@ class PackageLoader(ModuleLoader): def load_dynamic(self, name, stuff): file, filename, (suff, mode, type) = stuff # Hack around restriction in imp.load_dynamic() - i = string.rfind(name, '.') + i = name.rfind('.') tail = name[i+1:] if sys.modules.has_key(tail): save = sys.modules[tail] @@ -241,7 +240,7 @@ class PackageLoader(ModuleLoader): def set_parent(self, m): name = m.__name__ if '.' in name: - name = name[:string.rfind(name, '.')] + name = name[:name.rfind('.')] else: name = '' m.__ = sys.modules[name] @@ -250,7 +249,7 @@ class PackageLoader(ModuleLoader): name = package.__name__ package.__domain__ = domain = [name] while '.' in name: - name = name[:string.rfind(name, '.')] + name = name[:name.rfind('.')] domain.append(name) if name: domain.append('') @@ -285,7 +284,7 @@ class PackageImporter(ModuleImporter): if not name: return self.finish(package, p, '', fromlist) if '.' in name: - i = string.find(name, '.') + i = name.find('.') name, tail = name[:i], name[i:] else: tail = '' @@ -293,7 +292,7 @@ class PackageImporter(ModuleImporter): m = self.get1(mname) return self.finish(package, m, tail, fromlist) if '.' in name: - i = string.find(name, '.') + i = name.find('.') name, tail = name[:i], name[i:] else: tail = '' @@ -312,7 +311,7 @@ class PackageImporter(ModuleImporter): yname, tail = yname + tail, '' m = self.get1(yname) while tail: - i = string.find(tail, '.', 1) + i = tail.find('.', 1) if i > 0: head, tail = tail[:i], tail[i:] else: @@ -351,7 +350,7 @@ class PackageImporter(ModuleImporter): if sys.modules.has_key(name): return sys.modules[name] if '.' in name: - i = string.rfind(name, '.') + i = name.rfind('.') head, tail = name[:i], name[i+1:] else: head, tail = '', name @@ -367,7 +366,7 @@ class PackageImporter(ModuleImporter): def reload(self, module): name = module.__name__ if '.' in name: - i = string.rfind(name, '.') + i = name.rfind('.') head, tail = name[:i], name[i+1:] path = sys.modules[head].__path__ else: diff --git a/Lib/lib-old/packmail.py b/Lib/lib-old/packmail.py index 2a5aa75..8d247bc 100644 --- a/Lib/lib-old/packmail.py +++ b/Lib/lib-old/packmail.py @@ -5,7 +5,6 @@ import os from stat import ST_MTIME -import string # Print help def help(): @@ -103,7 +102,7 @@ def packtree(outfp, dirname): packtree(outfp, subdirname) def unixfix(name): - comps = string.splitfields(name, os.sep) + comps = name.splitfields(os.sep) res = '' for comp in comps: if comp: diff --git a/Lib/lib-old/tb.py b/Lib/lib-old/tb.py index abe4824..57851aa 100644 --- a/Lib/lib-old/tb.py +++ b/Lib/lib-old/tb.py @@ -5,7 +5,6 @@ import sys import os from stat import * -import string import linecache def br(): browser(sys.last_traceback) @@ -35,7 +34,7 @@ def browser(tb): except EOFError: print '\n[EOF]' break - cmd = string.strip(line) + cmd = line.strip() if cmd: if cmd == 'quit': break @@ -62,8 +61,8 @@ def browserlist(tb): last = lineno first = max(1, last-10) for i in range(first, last+1): - if i == lineno: prefix = '***' + string.rjust(`i`, 4) + ':' - else: prefix = string.rjust(`i`, 7) + ':' + if i == lineno: prefix = '***' + `i`.rjust(4) + ':' + else: prefix = `i`.rjust(7) + ':' line = linecache.getline(filename, i) if line[-1:] == '\n': line = line[:-1] print prefix + line @@ -115,14 +114,14 @@ def printtbheader(tb): info = '"' + filename + '"(' + `lineno` + ')' line = linecache.getline(filename, lineno) if line: - info = info + ': ' + string.strip(line) + info = info + ': ' + line.strip() print info def printsymbols(d): keys = d.keys() keys.sort() for name in keys: - print ' ' + string.ljust(name, 12) + ':', + print ' ' + name.ljust(12) + ':', printobject(d[name], 4) print diff --git a/Lib/lib-tk/Tkinter.py b/Lib/lib-tk/Tkinter.py index c4e78a2..da436c1 100644 --- a/Lib/lib-tk/Tkinter.py +++ b/Lib/lib-tk/Tkinter.py @@ -37,14 +37,13 @@ tkinter = _tkinter # b/w compat for export TclError = _tkinter.TclError from types import * from Tkconstants import * -import string; _string = string; del string try: import MacOS; _MacOS = MacOS; del MacOS except ImportError: _MacOS = None -TkVersion = _string.atof(_tkinter.TK_VERSION) -TclVersion = _string.atof(_tkinter.TCL_VERSION) +TkVersion = float(_tkinter.TK_VERSION) +TclVersion = float(_tkinter.TCL_VERSION) READABLE = _tkinter.READABLE WRITABLE = _tkinter.WRITABLE @@ -782,7 +781,7 @@ class Misc: return t[:1] + tuple(map(self.__winfo_getint, t[1:])) def __winfo_getint(self, x): """Internal function.""" - return _string.atoi(x, 0) + return int(x, 0) def winfo_vrootheight(self): """Return the height of the virtual root window associated with this widget in pixels. If there is no virtual root window return the @@ -850,7 +849,7 @@ class Misc: % (add and '+' or '', funcid, - _string.join(self._subst_format))) + " ".join(self._subst_format))) self.tk.call(what + (sequence, cmd)) return funcid elif sequence: @@ -972,9 +971,8 @@ class Misc: if name[0] == '.': w = w._root() name = name[1:] - find = _string.find while name: - i = find(name, '.') + i = name.find('.') if i >= 0: name, tail = name[:i], name[i+1:] else: diff --git a/Lib/lib-tk/tkFont.py b/Lib/lib-tk/tkFont.py index a41e368..169c529 100644 --- a/Lib/lib-tk/tkFont.py +++ b/Lib/lib-tk/tkFont.py @@ -18,7 +18,6 @@ __version__ = "0.9" import Tkinter -import string # weight/slant NORMAL = "normal" @@ -120,7 +119,7 @@ class Font: def measure(self, text): "Return text width" - return string.atoi(self._call("font", "measure", self.name, text)) + return int(self._call("font", "measure", self.name, text)) def metrics(self, *options): """Return font metrics. @@ -129,14 +128,14 @@ class Font: using this font before calling this method.""" if options: - return string.atoi( + return int( self._call("font", "metrics", self.name, self._get(options)) ) else: res = self._split(self._call("font", "metrics", self.name)) options = {} for i in range(0, len(res), 2): - options[res[i][1:]] = string.atoi(res[i+1]) + options[res[i][1:]] = int(res[i+1]) return options def families(root=None): diff --git a/Lib/lib-tk/tkSimpleDialog.py b/Lib/lib-tk/tkSimpleDialog.py index 0dc5c84..15ff544 100644 --- a/Lib/lib-tk/tkSimpleDialog.py +++ b/Lib/lib-tk/tkSimpleDialog.py @@ -157,8 +157,6 @@ class Dialog(Toplevel): # -------------------------------------------------------------------- # convenience dialogues -import string - class _QueryDialog(Dialog): def __init__(self, title, prompt, @@ -236,7 +234,7 @@ class _QueryDialog(Dialog): class _QueryInteger(_QueryDialog): errormessage = "Not an integer." def getresult(self): - return string.atoi(self.entry.get()) + return int(self.entry.get()) def askinteger(title, prompt, **kw): '''get an integer from the user @@ -255,7 +253,7 @@ def askinteger(title, prompt, **kw): class _QueryFloat(_QueryDialog): errormessage = "Not a floating point value." def getresult(self): - return string.atof(self.entry.get()) + return float(self.entry.get()) def askfloat(title, prompt, **kw): '''get a float from the user diff --git a/Lib/sre_parse.py b/Lib/sre_parse.py index 7c6eb9f..635605d 100644 --- a/Lib/sre_parse.py +++ b/Lib/sre_parse.py @@ -10,7 +10,7 @@ # XXX: show string offset and offending character for all errors -import string, sys +import sys from sre_constants import * @@ -60,12 +60,6 @@ FLAGS = { "u": SRE_FLAG_UNICODE, } -try: - int("10", 8) - atoi = int -except TypeError: - atoi = string.atoi - class Pattern: # master pattern object. keeps track of global attributes def __init__(self): @@ -222,7 +216,7 @@ def isname(name): def _group(escape, groups): # check if the escape string represents a valid group try: - gid = atoi(escape[1:]) + gid = int(escape[1:]) if gid and gid < groups: return gid except ValueError: @@ -245,13 +239,13 @@ def _class_escape(source, escape): escape = escape[2:] if len(escape) != 2: raise error, "bogus escape: %s" % repr("\\" + escape) - return LITERAL, atoi(escape, 16) & 0xff + return LITERAL, int(escape, 16) & 0xff elif str(escape[1:2]) in OCTDIGITS: # octal escape (up to three digits) while source.next in OCTDIGITS and len(escape) < 5: escape = escape + source.get() escape = escape[1:] - return LITERAL, atoi(escape, 8) & 0xff + return LITERAL, int(escape, 8) & 0xff if len(escape) == 2: return LITERAL, ord(escape[1]) except ValueError: @@ -273,12 +267,12 @@ def _escape(source, escape, state): escape = escape + source.get() if len(escape) != 4: raise ValueError - return LITERAL, atoi(escape[2:], 16) & 0xff + return LITERAL, int(escape[2:], 16) & 0xff elif escape[1:2] == "0": # octal escape while source.next in OCTDIGITS and len(escape) < 4: escape = escape + source.get() - return LITERAL, atoi(escape[1:], 8) & 0xff + return LITERAL, int(escape[1:], 8) & 0xff elif escape[1:2] in DIGITS: # octal escape *or* decimal group reference (sigh) here = source.tell() @@ -288,7 +282,7 @@ def _escape(source, escape, state): source.next in OCTDIGITS): # got three octal digits; this is an octal escape escape = escape + source.get() - return LITERAL, atoi(escape[1:], 8) & 0xff + return LITERAL, int(escape[1:], 8) & 0xff # got at least one decimal digit; this is a group reference group = _group(escape, state.groups) if group: @@ -462,9 +456,9 @@ def _parse(source, state): source.seek(here) continue if lo: - min = atoi(lo) + min = int(lo) if hi: - max = atoi(hi) + max = int(hi) if max < min: raise error, "bad repeat interval" else: @@ -652,7 +646,7 @@ def parse_template(source, pattern): if not name: raise error, "bad group name" try: - index = atoi(name) + index = int(name) except ValueError: if not isname(name): raise error, "bad character in group name" @@ -676,7 +670,7 @@ def parse_template(source, pattern): break if not code: this = this[1:] - code = LITERAL, atoi(this[-6:], 8) & 0xff + code = LITERAL, int(this[-6:], 8) & 0xff a(code) else: try: @@ -705,4 +699,4 @@ def expand_template(template, match): if s is None: raise error, "empty group" a(s) - return string.join(p, sep) + return sep.join(p) diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py index 60bc6c6..5866d43 100755 --- a/Lib/test/regrtest.py +++ b/Lib/test/regrtest.py @@ -32,7 +32,6 @@ of /tmp). """ import sys -import string import os import getopt import traceback @@ -106,7 +105,7 @@ def main(tests=None, testdir=None, verbose=0, quiet=0, generate=0, filename = os.path.join(gettempdir(), 'pynexttest') try: fp = open(filename, 'r') - next = string.strip(fp.read()) + next = fp.read().strip() tests = [next] fp.close() except IOError: @@ -163,10 +162,10 @@ def main(tests=None, testdir=None, verbose=0, quiet=0, generate=0, print "that passes in verbose mode may fail without it." if bad: print count(len(bad), "test"), "failed:", - print string.join(bad) + print " ".join(bad) if skipped and not quiet: print count(len(skipped), "test"), "skipped:", - print string.join(skipped) + print " ".join(skipped) if single: alltests = findtests(testdir, stdtests, nottests) diff --git a/Lib/test/sortperf.py b/Lib/test/sortperf.py index 34ed338..fd22194 100644 --- a/Lib/test/sortperf.py +++ b/Lib/test/sortperf.py @@ -112,16 +112,15 @@ def main(): Extra arguments are used to seed the random generator. """ - import string # default range (inclusive) k1 = 15 k2 = 19 if sys.argv[1:]: # one argument: single point - k1 = k2 = string.atoi(sys.argv[1]) + k1 = k2 = int(sys.argv[1]) if sys.argv[2:]: # two arguments: specify range - k2 = string.atoi(sys.argv[2]) + k2 = int(sys.argv[2]) if sys.argv[3:]: # derive random seed from remaining arguments x, y, z = 0, 0, 0 diff --git a/Lib/test/string_tests.py b/Lib/test/string_tests.py index 2e912c8..a408ef3 100644 --- a/Lib/test/string_tests.py +++ b/Lib/test/string_tests.py @@ -44,8 +44,8 @@ def run_module_tests(test): test('join', BadSeq2(), 'a b c') # try a few long ones - print string.join(['x' * 100] * 100, ':') - print string.join(('x' * 100,) * 100, ':') + print ":".join(['x' * 100] * 100) + print ":".join(('x' * 100,) * 100) def run_method_tests(test): diff --git a/Lib/test/test_dospath.py b/Lib/test/test_dospath.py index 08d32da..5b0fee5 100644 --- a/Lib/test/test_dospath.py +++ b/Lib/test/test_dospath.py @@ -1,11 +1,10 @@ import dospath -import string import os errors = 0 def tester(fn, wantResult): - fn = string.replace(fn, "\\", "\\\\") + fn = fn.replace("\\", "\\\\") gotResult = eval(fn) if wantResult != gotResult: print "error!" diff --git a/Lib/test/test_extcall.py b/Lib/test/test_extcall.py index 10162aa..9e6da62 100644 --- a/Lib/test/test_extcall.py +++ b/Lib/test/test_extcall.py @@ -1,6 +1,5 @@ from test_support import verify, verbose, TestFailed from UserList import UserList -import string def sortdict(d): keys = d.keys() @@ -195,7 +194,7 @@ for args in ['', 'a', 'ab']: if vararg: arglist.append('*' + vararg) if kwarg: arglist.append('**' + kwarg) decl = 'def %s(%s): print "ok %s", a, b, d, e, v, k' % ( - name, string.join(arglist, ', '), name) + name, ', '.join(arglist), name) exec(decl) func = eval(name) funcs.append(func) diff --git a/Lib/test/test_imgfile.py b/Lib/test/test_imgfile.py index 8eb330d..26f6186 100755 --- a/Lib/test/test_imgfile.py +++ b/Lib/test/test_imgfile.py @@ -30,7 +30,6 @@ def testimage(name): import sys import os - import string outputfile = '/tmp/deleteme' @@ -47,9 +46,9 @@ def testimage(name): else: # ...or the full path of the module ourname = sys.modules[__name__].__file__ - parts = string.splitfields(ourname, os.sep) + parts = ourname.split(os.sep) parts[-1] = name - name = string.joinfields(parts, os.sep) + name = os.sep.joinfields(parts) sizes = imgfile.getsizes(name) if verbose: print 'Opening test image: %s, sizes: %s' % (name, str(sizes)) diff --git a/Lib/test/test_mmap.py b/Lib/test/test_mmap.py index 4673913..8066285 100644 --- a/Lib/test/test_mmap.py +++ b/Lib/test/test_mmap.py @@ -1,6 +1,6 @@ from test_support import verify import mmap -import string, os, re, sys +import os, re, sys PAGESIZE = mmap.PAGESIZE @@ -21,8 +21,8 @@ def test_both(): # Simple sanity checks print type(m) # SF bug 128713: segfaulted on Linux - print ' Position of foo:', string.find(m, 'foo') / float(PAGESIZE), 'pages' - verify(string.find(m, 'foo') == PAGESIZE) + print ' Position of foo:', m.find('foo') / float(PAGESIZE), 'pages' + verify(m.find('foo') == PAGESIZE) print ' Length of file:', len(m) / float(PAGESIZE), 'pages' verify(len(m) == 2*PAGESIZE) diff --git a/Lib/test/test_ntpath.py b/Lib/test/test_ntpath.py index 1b49c03..7867fd9 100644 --- a/Lib/test/test_ntpath.py +++ b/Lib/test/test_ntpath.py @@ -1,11 +1,10 @@ import ntpath -import string import os errors = 0 def tester(fn, wantResult): - fn = string.replace(fn, "\\", "\\\\") + fn = fn.replace("\\", "\\\\") gotResult = eval(fn) if wantResult != gotResult: print "error!" diff --git a/Lib/test/test_pkg.py b/Lib/test/test_pkg.py index d915e10..f699af40 100644 --- a/Lib/test/test_pkg.py +++ b/Lib/test/test_pkg.py @@ -1,6 +1,6 @@ # Test packages (dotted-name import) -import sys, os, string, tempfile, traceback +import sys, os, tempfile, traceback from os import mkdir, rmdir # Can't test if these fail del mkdir, rmdir from test_support import verify, verbose, TestFailed @@ -10,7 +10,7 @@ from test_support import verify, verbose, TestFailed def mkhier(root, descr): mkdir(root) for name, contents in descr: - comps = string.split(name) + comps = name.split() fullname = root for c in comps: fullname = os.path.join(fullname, c) -- cgit v0.12