summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/binhex.py14
-rw-r--r--Lib/bisect.py4
-rw-r--r--Lib/copy.py28
-rw-r--r--Lib/ftplib.py269
-rw-r--r--Lib/gopherlib.py22
-rwxr-xr-xLib/mailbox.py80
-rw-r--r--Lib/multifile.py18
-rw-r--r--Lib/nntplib.py17
-rwxr-xr-xLib/profile.py21
-rwxr-xr-xLib/quopri.py56
-rw-r--r--Lib/string.py9
-rw-r--r--Lib/stringold.py9
12 files changed, 282 insertions, 265 deletions
diff --git a/Lib/binhex.py b/Lib/binhex.py
index 4693443..92ff4e4 100644
--- a/Lib/binhex.py
+++ b/Lib/binhex.py
@@ -89,9 +89,9 @@ else:
fp = open(name)
data = open(name).read(256)
for c in data:
- if not c in string.whitespace \
- and (c<' ' or ord(c) > 0177):
- break
+ if not c in string.whitespace \
+ and (c<' ' or ord(c) > 0177):
+ break
else:
finfo.Type = 'TEXT'
fp.seek(0, 2)
@@ -214,10 +214,10 @@ class BinHex:
self.ofp.write(data)
def _writecrc(self):
- # XXXX Should this be here??
- # self.crc = binascii.crc_hqx('\0\0', self.crc)
- self.ofp.write(struct.pack('>h', self.crc))
- self.crc = 0
+ # XXXX Should this be here??
+ # self.crc = binascii.crc_hqx('\0\0', self.crc)
+ self.ofp.write(struct.pack('>h', self.crc))
+ self.crc = 0
def write(self, data):
if self.state != _DID_HEADER:
diff --git a/Lib/bisect.py b/Lib/bisect.py
index 4d92bc8..5fbc4ef 100644
--- a/Lib/bisect.py
+++ b/Lib/bisect.py
@@ -6,7 +6,7 @@
def insort(a, x, lo=0, hi=None):
if hi is None:
hi = len(a)
- while lo < hi:
+ while lo < hi:
mid = (lo+hi)/2
if x < a[mid]: hi = mid
else: lo = mid+1
@@ -18,7 +18,7 @@ def insort(a, x, lo=0, hi=None):
def bisect(a, x, lo=0, hi=None):
if hi is None:
hi = len(a)
- while lo < hi:
+ while lo < hi:
mid = (lo+hi)/2
if x < a[mid]: hi = mid
else: lo = mid+1
diff --git a/Lib/copy.py b/Lib/copy.py
index 1bdd4e1..b481d29 100644
--- a/Lib/copy.py
+++ b/Lib/copy.py
@@ -198,20 +198,20 @@ def _deepcopy_dict(x, memo):
d[types.DictionaryType] = _deepcopy_dict
def _keep_alive(x, memo):
- """Keeps a reference to the object x in the memo.
-
- Because we remember objects by their id, we have
- to assure that possibly temporary objects are kept
- alive by referencing them.
- We store a reference at the id of the memo, which should
- normally not be used unless someone tries to deepcopy
- the memo itself...
- """
- try:
- memo[id(memo)].append(x)
- except KeyError:
- # aha, this is the first one :-)
- memo[id(memo)]=[x]
+ """Keeps a reference to the object x in the memo.
+
+ Because we remember objects by their id, we have
+ to assure that possibly temporary objects are kept
+ alive by referencing them.
+ We store a reference at the id of the memo, which should
+ normally not be used unless someone tries to deepcopy
+ the memo itself...
+ """
+ try:
+ memo[id(memo)].append(x)
+ except KeyError:
+ # aha, this is the first one :-)
+ memo[id(memo)]=[x]
def _deepcopy_inst(x, memo):
if hasattr(x, '__deepcopy__'):
diff --git a/Lib/ftplib.py b/Lib/ftplib.py
index 5274b75..63903d0 100644
--- a/Lib/ftplib.py
+++ b/Lib/ftplib.py
@@ -40,9 +40,9 @@ import string
# Import SOCKS module if it exists, else standard socket module socket
try:
- import SOCKS; socket = SOCKS
+ import SOCKS; socket = SOCKS
except ImportError:
- import socket
+ import socket
# Magic number from <socket.h>
@@ -293,14 +293,14 @@ class FTP:
thishost = socket.gethostname()
# Make sure it is fully qualified
if not '.' in thishost:
- thisaddr = socket.gethostbyname(thishost)
- firstname, names, unused = \
- socket.gethostbyaddr(thisaddr)
- names.insert(0, firstname)
- for name in names:
- if '.' in name:
- thishost = name
- break
+ thisaddr = socket.gethostbyname(thishost)
+ firstname, names, unused = \
+ socket.gethostbyaddr(thisaddr)
+ names.insert(0, firstname)
+ for name in names:
+ if '.' in name:
+ thishost = name
+ break
try:
if os.environ.has_key('LOGNAME'):
realuser = os.environ['LOGNAME']
@@ -419,15 +419,15 @@ class FTP:
raise error_reply, resp
return self.voidcmd('RNTO ' + toname)
- def delete(self, filename):
+ def delete(self, filename):
'''Delete a file.'''
- resp = self.sendcmd('DELE ' + filename)
- if resp[:3] == '250':
- return resp
- elif resp[:1] == '5':
- raise error_perm, resp
- else:
- raise error_reply, resp
+ resp = self.sendcmd('DELE ' + filename)
+ if resp[:3] == '250':
+ return resp
+ elif resp[:1] == '5':
+ raise error_perm, resp
+ else:
+ raise error_reply, resp
def cwd(self, dirname):
'''Change to a directory.'''
@@ -477,20 +477,21 @@ class FTP:
_150_re = None
def parse150(resp):
- '''Parse the '150' response for a RETR request.
- Returns the expected transfer size or None; size is not guaranteed to
- be present in the 150 message.
- '''
- if resp[:3] != '150':
- raise error_reply, resp
- global _150_re
- if _150_re is None:
- import re
- _150_re = re.compile("150 .* \(([0-9][0-9]*) bytes\)", re.IGNORECASE)
- m = _150_re.match(resp)
- if m:
- return string.atoi(m.group(1))
- return None
+ '''Parse the '150' response for a RETR request.
+ Returns the expected transfer size or None; size is not guaranteed to
+ be present in the 150 message.
+ '''
+ if resp[:3] != '150':
+ raise error_reply, resp
+ global _150_re
+ if _150_re is None:
+ import re
+ _150_re = re.compile("150 .* \(([0-9][0-9]*) bytes\)",
+ re.IGNORECASE)
+ m = _150_re.match(resp)
+ if m:
+ return string.atoi(m.group(1))
+ return None
def parse227(resp):
@@ -561,104 +562,107 @@ def ftpcp(source, sourcename, target, targetname = '', type = 'I'):
class Netrc:
- """Class to parse & provide access to 'netrc' format files.
-
- See the netrc(4) man page for information on the file format.
-
- """
- __defuser = None
- __defpasswd = None
- __defacct = None
-
- def __init__(self, filename=None):
- if not filename:
- if os.environ.has_key("HOME"):
- filename = os.path.join(os.environ["HOME"], ".netrc")
- else:
- raise IOError, "specify file to load or set $HOME"
- self.__hosts = {}
- self.__macros = {}
- fp = open(filename, "r")
- in_macro = 0
- while 1:
- line = fp.readline()
- if not line: break
- if in_macro and string.strip(line):
- macro_lines.append(line)
- continue
- elif in_macro:
- self.__macros[macro_name] = tuple(macro_lines)
+ """Class to parse & provide access to 'netrc' format files.
+
+ See the netrc(4) man page for information on the file format.
+
+ """
+ __defuser = None
+ __defpasswd = None
+ __defacct = None
+
+ def __init__(self, filename=None):
+ if not filename:
+ if os.environ.has_key("HOME"):
+ filename = os.path.join(os.environ["HOME"],
+ ".netrc")
+ else:
+ raise IOError, \
+ "specify file to load or set $HOME"
+ self.__hosts = {}
+ self.__macros = {}
+ fp = open(filename, "r")
in_macro = 0
- words = string.split(line)
- host = user = passwd = acct = None
- default = 0
- i = 0
- while i < len(words):
- w1 = words[i]
- if i+1 < len(words):
- w2 = words[i + 1]
- else:
- w2 = None
- if w1 == 'default':
- default = 1
- elif w1 == 'machine' and w2:
- host = string.lower(w2)
- i = i + 1
- elif w1 == 'login' and w2:
- user = w2
- i = i + 1
- elif w1 == 'password' and w2:
- passwd = w2
- i = i + 1
- elif w1 == 'account' and w2:
- acct = w2
- i = i + 1
- elif w1 == 'macdef' and w2:
- macro_name = w2
- macro_lines = []
- in_macro = 1
- break
- i = i + 1
- if default:
- self.__defuser = user or self.__defuser
- self.__defpasswd = passwd or self.__defpasswd
- self.__defacct = acct or self.__defacct
- if host:
- if self.__hosts.has_key(host):
- ouser, opasswd, oacct = self.__hosts[host]
- user = user or ouser
- passwd = passwd or opasswd
- acct = acct or oacct
- self.__hosts[host] = user, passwd, acct
- fp.close()
+ while 1:
+ line = fp.readline()
+ if not line: break
+ if in_macro and string.strip(line):
+ macro_lines.append(line)
+ continue
+ elif in_macro:
+ self.__macros[macro_name] = tuple(macro_lines)
+ in_macro = 0
+ words = string.split(line)
+ host = user = passwd = acct = None
+ default = 0
+ i = 0
+ while i < len(words):
+ w1 = words[i]
+ if i+1 < len(words):
+ w2 = words[i + 1]
+ else:
+ w2 = None
+ if w1 == 'default':
+ default = 1
+ elif w1 == 'machine' and w2:
+ host = string.lower(w2)
+ i = i + 1
+ elif w1 == 'login' and w2:
+ user = w2
+ i = i + 1
+ elif w1 == 'password' and w2:
+ passwd = w2
+ i = i + 1
+ elif w1 == 'account' and w2:
+ acct = w2
+ i = i + 1
+ elif w1 == 'macdef' and w2:
+ macro_name = w2
+ macro_lines = []
+ in_macro = 1
+ break
+ i = i + 1
+ if default:
+ self.__defuser = user or self.__defuser
+ self.__defpasswd = passwd or self.__defpasswd
+ self.__defacct = acct or self.__defacct
+ if host:
+ if self.__hosts.has_key(host):
+ ouser, opasswd, oacct = \
+ self.__hosts[host]
+ user = user or ouser
+ passwd = passwd or opasswd
+ acct = acct or oacct
+ self.__hosts[host] = user, passwd, acct
+ fp.close()
- def get_hosts(self):
- """Return a list of hosts mentioned in the .netrc file."""
- return self.__hosts.keys()
+ def get_hosts(self):
+ """Return a list of hosts mentioned in the .netrc file."""
+ return self.__hosts.keys()
- def get_account(self, host):
- """Returns login information for the named host.
+ def get_account(self, host):
+ """Returns login information for the named host.
- The return value is a triple containing userid, password, and the
- accounting field.
+ The return value is a triple containing userid,
+ password, and the accounting field.
- """
- host = string.lower(host)
- user = passwd = acct = None
- if self.__hosts.has_key(host):
- user, passwd, acct = self.__hosts[host]
- user = user or self.__defuser
- passwd = passwd or self.__defpasswd
- acct = acct or self.__defacct
- return user, passwd, acct
+ """
+ host = string.lower(host)
+ user = passwd = acct = None
+ if self.__hosts.has_key(host):
+ user, passwd, acct = self.__hosts[host]
+ user = user or self.__defuser
+ passwd = passwd or self.__defpasswd
+ acct = acct or self.__defacct
+ return user, passwd, acct
- def get_macros(self):
- """Return a list of all defined macro names."""
- return self.__macros.keys()
+ def get_macros(self):
+ """Return a list of all defined macro names."""
+ return self.__macros.keys()
- def get_macro(self, macro):
- """Return a sequence of lines which define a named macro."""
- return self.__macros[macro]
+ def get_macro(self, macro):
+ """Return a sequence of lines which define a named macro."""
+ return self.__macros[macro]
@@ -680,17 +684,18 @@ def test():
ftp.set_debuglevel(debugging)
userid = passwd = acct = ''
try:
- netrc = Netrc(rcfile)
+ netrc = Netrc(rcfile)
except IOError:
- if rcfile is not None:
- sys.stderr.write("Could not open account file"
- " -- using anonymous login.")
+ if rcfile is not None:
+ sys.stderr.write("Could not open account file"
+ " -- using anonymous login.")
else:
- try:
- userid, passwd, acct = netrc.get_account(host)
- except KeyError:
- # no account for host
- sys.stderr.write("No account -- using anonymous login.")
+ try:
+ userid, passwd, acct = netrc.get_account(host)
+ except KeyError:
+ # no account for host
+ sys.stderr.write(
+ "No account -- using anonymous login.")
ftp.login(userid, passwd, acct)
for file in sys.argv[2:]:
if file[:2] == '-l':
diff --git a/Lib/gopherlib.py b/Lib/gopherlib.py
index e91ef99..033e579 100644
--- a/Lib/gopherlib.py
+++ b/Lib/gopherlib.py
@@ -77,19 +77,20 @@ def send_query(selector, query, host, port = 0):
# Takes a path as returned by urlparse and returns the appropriate selector
def path_to_selector(path):
- if path=="/":
- return "/"
- else:
- return path[2:] # Cuts initial slash and data type identifier
+ if path=="/":
+ return "/"
+ else:
+ return path[2:] # Cuts initial slash and data type identifier
# Takes a path as returned by urlparse and maps it to a string
# See section 3.4 of RFC 1738 for details
def path_to_datatype_name(path):
- if path=="/":
- return "TYPE='unknown'" # No way to tell, although "INDEX" is probable
- else:
- return type_to_name(path[1])
-
+ if path=="/":
+ # No way to tell, although "INDEX" is likely
+ return "TYPE='unknown'"
+ else:
+ return type_to_name(path[1])
+
# The following functions interpret the data returned by the gopher
# server according to the expected type, e.g. textfile or directory
@@ -118,7 +119,8 @@ def get_directory(f):
continue
if len(parts) > 4:
if parts[4:] != ['+']:
- print '(Extra info from server:', parts[4:], ')'
+ print '(Extra info from server:',
+ print parts[4:], ')'
else:
parts.append('')
parts.insert(0, gtype)
diff --git a/Lib/mailbox.py b/Lib/mailbox.py
index 37a4636..d1315d0 100755
--- a/Lib/mailbox.py
+++ b/Lib/mailbox.py
@@ -7,6 +7,7 @@ import rfc822
import os
class _Mailbox:
+
def __init__(self, fp):
self.fp = fp
self.seekp = 0
@@ -35,6 +36,7 @@ class _Mailbox:
return rfc822.Message(_Subfile(self.fp, start, stop))
class _Subfile:
+
def __init__(self, fp, start, stop):
self.fp = fp
self.start = start
@@ -66,17 +68,18 @@ class _Subfile:
return self.pos - self.start
def seek(self, pos, whence=0):
- if whence == 0:
- self.pos = self.start + pos
+ if whence == 0:
+ self.pos = self.start + pos
elif whence == 1:
- self.pos = self.pos + pos
+ self.pos = self.pos + pos
elif whence == 2:
- self.pos = self.stop + pos
+ self.pos = self.stop + pos
def close(self):
pass
class UnixMailbox(_Mailbox):
+
def _search_start(self):
while 1:
line = self.fp.readline()
@@ -96,6 +99,7 @@ class UnixMailbox(_Mailbox):
return
class MmdfMailbox(_Mailbox):
+
def _search_start(self):
while 1:
line = self.fp.readline()
@@ -115,43 +119,45 @@ class MmdfMailbox(_Mailbox):
return
class MHMailbox:
- def __init__(self, dirname):
- import re
- pat = re.compile('^[0-9][0-9]*$')
- self.dirname = dirname
- files = os.listdir(self.dirname)
- self.boxes = []
- for f in files:
- if pat.match(f):
- self.boxes.append(f)
-
- def next(self):
- if not self.boxes:
- return None
- fn = self.boxes[0]
- del self.boxes[0]
- fp = open(os.path.join(self.dirname, fn))
- return rfc822.Message(fp)
+
+ def __init__(self, dirname):
+ import re
+ pat = re.compile('^[0-9][0-9]*$')
+ self.dirname = dirname
+ files = os.listdir(self.dirname)
+ self.boxes = []
+ for f in files:
+ if pat.match(f):
+ self.boxes.append(f)
+
+ def next(self):
+ if not self.boxes:
+ return None
+ fn = self.boxes[0]
+ del self.boxes[0]
+ fp = open(os.path.join(self.dirname, fn))
+ return rfc822.Message(fp)
class BabylMailbox(_Mailbox):
- def _search_start(self):
- while 1:
- line = self.fp.readline()
- if not line:
- raise EOFError
- if line == '*** EOOH ***\n':
- return
- def _search_end(self):
- while 1:
- pos = self.fp.tell()
- line = self.fp.readline()
- if not line:
- return
- if line == '\037\014\n':
- self.fp.seek(pos)
- return
+ def _search_start(self):
+ while 1:
+ line = self.fp.readline()
+ if not line:
+ raise EOFError
+ if line == '*** EOOH ***\n':
+ return
+
+ def _search_end(self):
+ while 1:
+ pos = self.fp.tell()
+ line = self.fp.readline()
+ if not line:
+ return
+ if line == '\037\014\n':
+ self.fp.seek(pos)
+ return
def _test():
diff --git a/Lib/multifile.py b/Lib/multifile.py
index 247b010..8ba88e4 100644
--- a/Lib/multifile.py
+++ b/Lib/multifile.py
@@ -45,15 +45,15 @@ class MultiFile:
return self.fp.tell() - self.start
#
def seek(self, pos, whence=0):
- here = self.tell()
- if whence:
- if whence == 1:
- pos = pos + here
- elif whence == 2:
- if self.level > 0:
- pos = pos + self.lastpos
- else:
- raise Error, "can't use whence=2 yet"
+ here = self.tell()
+ if whence:
+ if whence == 1:
+ pos = pos + here
+ elif whence == 2:
+ if self.level > 0:
+ pos = pos + self.lastpos
+ else:
+ raise Error, "can't use whence=2 yet"
if not 0 <= pos <= here or \
self.level > 0 and pos > self.lastpos:
raise Error, 'bad MultiFile.seek() call'
diff --git a/Lib/nntplib.py b/Lib/nntplib.py
index 85c2a63..0ee3ab0 100644
--- a/Lib/nntplib.py
+++ b/Lib/nntplib.py
@@ -72,14 +72,15 @@ class NNTP:
self.debugging = 0
self.welcome = self.getresp()
if user:
- resp = self.shortcmd('authinfo user '+user)
- if resp[:3] == '381':
- if not password:
- raise error_reply, resp
- else:
- resp = self.shortcmd('authinfo pass '+password)
- if resp[:3] != '281':
- raise error_perm, resp
+ resp = self.shortcmd('authinfo user '+user)
+ if resp[:3] == '381':
+ if not password:
+ raise error_reply, resp
+ else:
+ resp = self.shortcmd(
+ 'authinfo pass '+password)
+ if resp[:3] != '281':
+ raise error_perm, resp
# Get the welcome message from the server
# (this is read and squirreled away by __init__()).
diff --git a/Lib/profile.py b/Lib/profile.py
index f7de6a4..df36c17 100755
--- a/Lib/profile.py
+++ b/Lib/profile.py
@@ -438,7 +438,7 @@ class Profile:
sys.setprofile(None)
- #******************************************************************
+ #******************************************************************
# The following calculates the overhead for using a profiler. The
# problem is that it takes a fair amount of time for the profiler
# to stop the stopwatch (from the time it recieves an event).
@@ -481,35 +481,36 @@ class Profile:
# profiler very much, and the accuracy goes way up.
#**************************************************************
- def calibrate(self, m):
+ def calibrate(self, m):
+ # Modified by Tim Peters
n = m
- s = self.timer()
+ s = self.get_time()
while n:
self.simple()
n = n - 1
- f = self.timer()
- my_simple = f[0]+f[1]-s[0]-s[1]
+ f = self.get_time()
+ my_simple = f - s
#print "Simple =", my_simple,
n = m
- s = self.timer()
+ s = self.get_time()
while n:
self.instrumented()
n = n - 1
- f = self.timer()
- my_inst = f[0]+f[1]-s[0]-s[1]
+ f = self.get_time()
+ my_inst = f - s
# print "Instrumented =", my_inst
avg_cost = (my_inst - my_simple)/m
#print "Delta/call =", avg_cost, "(profiler fixup constant)"
return avg_cost
# simulate a program with no profiler activity
- def simple(self):
+ def simple(self):
a = 1
pass
# simulate a program with call/return event processing
- def instrumented(self):
+ def instrumented(self):
a = 1
self.profiler_simulation(a, a, a)
diff --git a/Lib/quopri.py b/Lib/quopri.py
index e8e8397..6b45597 100755
--- a/Lib/quopri.py
+++ b/Lib/quopri.py
@@ -93,43 +93,43 @@ def test():
import sys
import getopt
try:
- opts, args = getopt.getopt(sys.argv[1:], 'td')
+ opts, args = getopt.getopt(sys.argv[1:], 'td')
except getopt.error, msg:
- sys.stdout = sys.stderr
- print msg
- print "usage: quopri [-t | -d] [file] ..."
- print "-t: quote tabs"
- print "-d: decode; default encode"
- sys.exit(2)
+ sys.stdout = sys.stderr
+ print msg
+ print "usage: quopri [-t | -d] [file] ..."
+ print "-t: quote tabs"
+ print "-d: decode; default encode"
+ sys.exit(2)
deco = 0
tabs = 0
for o, a in opts:
- if o == '-t': tabs = 1
- if o == '-d': deco = 1
+ if o == '-t': tabs = 1
+ if o == '-d': deco = 1
if tabs and deco:
- sys.stdout = sys.stderr
- print "-t and -d are mutually exclusive"
- sys.exit(2)
+ sys.stdout = sys.stderr
+ print "-t and -d are mutually exclusive"
+ sys.exit(2)
if not args: args = ['-']
sts = 0
for file in args:
- if file == '-':
- fp = sys.stdin
- else:
- try:
- fp = open(file)
- except IOError, msg:
- sys.stderr.write("%s: can't open (%s)\n" % (file, msg))
- sts = 1
- continue
- if deco:
- decode(fp, sys.stdout)
- else:
- encode(fp, sys.stdout, tabs)
- if fp is not sys.stdin:
- fp.close()
+ if file == '-':
+ fp = sys.stdin
+ else:
+ try:
+ fp = open(file)
+ except IOError, msg:
+ sys.stderr.write("%s: can't open (%s)\n" % (file, msg))
+ sts = 1
+ continue
+ if deco:
+ decode(fp, sys.stdout)
+ else:
+ encode(fp, sys.stdout, tabs)
+ if fp is not sys.stdin:
+ fp.close()
if sts:
- sys.exit(sts)
+ sys.exit(sts)
if __name__ == '__main__':
test()
diff --git a/Lib/string.py b/Lib/string.py
index b2563f9..f2c3744 100644
--- a/Lib/string.py
+++ b/Lib/string.py
@@ -203,7 +203,7 @@ def joinfields(words, sep = ' '):
(joinfields and join are synonymous)
- """
+ """
res = ''
for w in words:
res = res + (sep + w)
@@ -430,7 +430,7 @@ def ljust(s, width):
# Right-justify a string
def rjust(s, width):
- """rjust(s, width) -> string
+ """rjust(s, width) -> string
Return a right-justified version of s, in a field of the
specified width, padded with spaces as needed. The string is
@@ -443,7 +443,7 @@ def rjust(s, width):
# Center a string
def center(s, width):
- """center(s, width) -> string
+ """center(s, width) -> string
Return a center version of s, in a field of the specified
width. padded with spaces as needed. The string is never
@@ -508,7 +508,8 @@ def translate(s, table, deletions=""):
"""
if type(table) != type('') or len(table) != 256:
- raise TypeError, "translation table must be 256 characters long"
+ raise TypeError, \
+ "translation table must be 256 characters long"
res = ""
for c in s:
if c not in deletions:
diff --git a/Lib/stringold.py b/Lib/stringold.py
index b2563f9..f2c3744 100644
--- a/Lib/stringold.py
+++ b/Lib/stringold.py
@@ -203,7 +203,7 @@ def joinfields(words, sep = ' '):
(joinfields and join are synonymous)
- """
+ """
res = ''
for w in words:
res = res + (sep + w)
@@ -430,7 +430,7 @@ def ljust(s, width):
# Right-justify a string
def rjust(s, width):
- """rjust(s, width) -> string
+ """rjust(s, width) -> string
Return a right-justified version of s, in a field of the
specified width, padded with spaces as needed. The string is
@@ -443,7 +443,7 @@ def rjust(s, width):
# Center a string
def center(s, width):
- """center(s, width) -> string
+ """center(s, width) -> string
Return a center version of s, in a field of the specified
width. padded with spaces as needed. The string is never
@@ -508,7 +508,8 @@ def translate(s, table, deletions=""):
"""
if type(table) != type('') or len(table) != 256:
- raise TypeError, "translation table must be 256 characters long"
+ raise TypeError, \
+ "translation table must be 256 characters long"
res = ""
for c in s:
if c not in deletions: