Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
13a2c279
Commit
13a2c279
authored
Feb 10, 2000
by
Fred Drake
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Untabify to pass the -tt test.
parent
857c4c36
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
807 additions
and
807 deletions
+807
-807
Lib/httplib.py
Lib/httplib.py
+15
-15
Lib/mailbox.py
Lib/mailbox.py
+240
-240
Lib/mimetypes.py
Lib/mimetypes.py
+20
-20
Lib/rfc822.py
Lib/rfc822.py
+11
-11
Lib/shelve.py
Lib/shelve.py
+109
-109
Lib/stringold.py
Lib/stringold.py
+28
-28
Lib/urllib2.py
Lib/urllib2.py
+383
-383
Lib/whichdb.py
Lib/whichdb.py
+1
-1
No files found.
Lib/httplib.py
View file @
13a2c279
...
@@ -44,27 +44,27 @@ HTTPS_PORT = 443
...
@@ -44,27 +44,27 @@ HTTPS_PORT = 443
class
FakeSocket
:
class
FakeSocket
:
def
__init__
(
self
,
sock
,
ssl
):
def
__init__
(
self
,
sock
,
ssl
):
self
.
__sock
=
sock
self
.
__sock
=
sock
self
.
__ssl
=
ssl
self
.
__ssl
=
ssl
return
return
def
makefile
(
self
,
mode
):
# hopefully, never have to write
def
makefile
(
self
,
mode
):
# hopefully, never have to write
msgbuf
=
""
msgbuf
=
""
while
1
:
while
1
:
try
:
try
:
msgbuf
=
msgbuf
+
self
.
__ssl
.
read
()
msgbuf
=
msgbuf
+
self
.
__ssl
.
read
()
except
socket
.
sslerror
,
msg
:
except
socket
.
sslerror
,
msg
:
break
break
return
StringIO
(
msgbuf
)
return
StringIO
(
msgbuf
)
def
send
(
self
,
stuff
,
flags
=
0
):
def
send
(
self
,
stuff
,
flags
=
0
):
return
self
.
__ssl
.
write
(
stuff
)
return
self
.
__ssl
.
write
(
stuff
)
def
recv
(
self
,
len
=
1024
,
flags
=
0
):
def
recv
(
self
,
len
=
1024
,
flags
=
0
):
return
self
.
__ssl
.
read
(
len
)
return
self
.
__ssl
.
read
(
len
)
def
__getattr__
(
self
,
attr
):
def
__getattr__
(
self
,
attr
):
return
getattr
(
self
.
__sock
,
attr
)
return
getattr
(
self
.
__sock
,
attr
)
class
HTTP
:
class
HTTP
:
"""This class manages a connection to an HTTP server."""
"""This class manages a connection to an HTTP server."""
...
...
Lib/mailbox.py
View file @
13a2c279
This diff is collapsed.
Click to expand it.
Lib/mimetypes.py
View file @
13a2c279
...
@@ -30,8 +30,8 @@ import urllib
...
@@ -30,8 +30,8 @@ import urllib
knownfiles
=
[
knownfiles
=
[
"/usr/local/etc/httpd/conf/mime.types"
,
"/usr/local/etc/httpd/conf/mime.types"
,
"/usr/local/lib/netscape/mime.types"
,
"/usr/local/lib/netscape/mime.types"
,
"/usr/local/etc/httpd/conf/mime.types"
,
# Apache 1.2
"/usr/local/etc/httpd/conf/mime.types"
,
# Apache 1.2
"/usr/local/etc/mime.types"
,
# Apache 1.3
"/usr/local/etc/mime.types"
,
# Apache 1.3
]
]
inited
=
0
inited
=
0
...
@@ -56,24 +56,24 @@ def guess_type(url):
...
@@ -56,24 +56,24 @@ def guess_type(url):
init
()
init
()
scheme
,
url
=
urllib
.
splittype
(
url
)
scheme
,
url
=
urllib
.
splittype
(
url
)
if
scheme
==
'data'
:
if
scheme
==
'data'
:
# syntax of data URLs:
# syntax of data URLs:
# dataurl := "data:" [ mediatype ] [ ";base64" ] "," data
# dataurl := "data:" [ mediatype ] [ ";base64" ] "," data
# mediatype := [ type "/" subtype ] *( ";" parameter )
# mediatype := [ type "/" subtype ] *( ";" parameter )
# data := *urlchar
# data := *urlchar
# parameter := attribute "=" value
# parameter := attribute "=" value
# type/subtype defaults to "text/plain"
# type/subtype defaults to "text/plain"
comma
=
string
.
find
(
url
,
','
)
comma
=
string
.
find
(
url
,
','
)
if
comma
<
0
:
if
comma
<
0
:
# bad data URL
# bad data URL
return
None
,
None
return
None
,
None
semi
=
string
.
find
(
url
,
';'
,
0
,
comma
)
semi
=
string
.
find
(
url
,
';'
,
0
,
comma
)
if
semi
>=
0
:
if
semi
>=
0
:
type
=
url
[:
semi
]
type
=
url
[:
semi
]
else
:
else
:
type
=
url
[:
comma
]
type
=
url
[:
comma
]
if
'='
in
type
or
'/'
not
in
type
:
if
'='
in
type
or
'/'
not
in
type
:
type
=
'text/plain'
type
=
'text/plain'
return
type
,
None
# never compressed, so encoding is None
return
type
,
None
# never compressed, so encoding is None
base
,
ext
=
posixpath
.
splitext
(
url
)
base
,
ext
=
posixpath
.
splitext
(
url
)
while
suffix_map
.
has_key
(
ext
):
while
suffix_map
.
has_key
(
ext
):
base
,
ext
=
posixpath
.
splitext
(
base
+
suffix_map
[
ext
])
base
,
ext
=
posixpath
.
splitext
(
base
+
suffix_map
[
ext
])
...
...
Lib/rfc822.py
View file @
13a2c279
...
@@ -332,11 +332,11 @@ class Message:
...
@@ -332,11 +332,11 @@ class Message:
"""
"""
raw
=
[]
raw
=
[]
for
h
in
self
.
getallmatchingheaders
(
name
):
for
h
in
self
.
getallmatchingheaders
(
name
):
if
h
[
0
]
in
'
\
t
'
:
if
h
[
0
]
in
'
\
t
'
:
raw
.
append
(
h
)
raw
.
append
(
h
)
else
:
else
:
if
raw
:
if
raw
:
raw
.
append
(
', '
)
raw
.
append
(
', '
)
i
=
string
.
find
(
h
,
':'
)
i
=
string
.
find
(
h
,
':'
)
if
i
>
0
:
if
i
>
0
:
addr
=
h
[
i
+
1
:]
addr
=
h
[
i
+
1
:]
...
@@ -786,7 +786,7 @@ def dump_address_pair(pair):
...
@@ -786,7 +786,7 @@ def dump_address_pair(pair):
_monthnames
=
[
'jan'
,
'feb'
,
'mar'
,
'apr'
,
'may'
,
'jun'
,
'jul'
,
_monthnames
=
[
'jan'
,
'feb'
,
'mar'
,
'apr'
,
'may'
,
'jun'
,
'jul'
,
'aug'
,
'sep'
,
'oct'
,
'nov'
,
'dec'
,
'aug'
,
'sep'
,
'oct'
,
'nov'
,
'dec'
,
'january'
,
'february'
,
'march'
,
'april'
,
'may'
,
'june'
,
'july'
,
'january'
,
'february'
,
'march'
,
'april'
,
'may'
,
'june'
,
'july'
,
'august'
,
'september'
,
'october'
,
'november'
,
'december'
]
'august'
,
'september'
,
'october'
,
'november'
,
'december'
]
_daynames
=
[
'mon'
,
'tue'
,
'wed'
,
'thu'
,
'fri'
,
'sat'
,
'sun'
]
_daynames
=
[
'mon'
,
'tue'
,
'wed'
,
'thu'
,
'fri'
,
'sat'
,
'sun'
]
...
@@ -837,16 +837,16 @@ def parsedate_tz(data):
...
@@ -837,16 +837,16 @@ def parsedate_tz(data):
mm
=
_monthnames
.
index
(
mm
)
+
1
mm
=
_monthnames
.
index
(
mm
)
+
1
if
mm
>
12
:
mm
=
mm
-
12
if
mm
>
12
:
mm
=
mm
-
12
if
dd
[
-
1
]
==
','
:
if
dd
[
-
1
]
==
','
:
dd
=
dd
[:
-
1
]
dd
=
dd
[:
-
1
]
i
=
string
.
find
(
yy
,
':'
)
i
=
string
.
find
(
yy
,
':'
)
if
i
>
0
:
if
i
>
0
:
yy
,
tm
=
tm
,
yy
yy
,
tm
=
tm
,
yy
if
yy
[
-
1
]
==
','
:
if
yy
[
-
1
]
==
','
:
yy
=
yy
[:
-
1
]
yy
=
yy
[:
-
1
]
if
yy
[
0
]
not
in
string
.
digits
:
if
yy
[
0
]
not
in
string
.
digits
:
yy
,
tz
=
tz
,
yy
yy
,
tz
=
tz
,
yy
if
tm
[
-
1
]
==
','
:
if
tm
[
-
1
]
==
','
:
tm
=
tm
[:
-
1
]
tm
=
tm
[:
-
1
]
tm
=
string
.
splitfields
(
tm
,
':'
)
tm
=
string
.
splitfields
(
tm
,
':'
)
if
len
(
tm
)
==
2
:
if
len
(
tm
)
==
2
:
[
thh
,
tmm
]
=
tm
[
thh
,
tmm
]
=
tm
...
...
Lib/shelve.py
View file @
13a2c279
...
@@ -10,19 +10,19 @@ are ordinary strings.
...
@@ -10,19 +10,19 @@ are ordinary strings.
To summarize the interface (key is a string, data is an arbitrary
To summarize the interface (key is a string, data is an arbitrary
object):
object):
import shelve
import shelve
d = shelve.open(filename) # open, with (g)dbm filename -- no suffix
d = shelve.open(filename) # open, with (g)dbm filename -- no suffix
d[key] = data
# store data at key (overwrites old data if
d[key] = data
# store data at key (overwrites old data if
# using an existing key)
# using an existing key)
data = d[key]
# retrieve data at key (raise KeyError if no
data = d[key]
# retrieve data at key (raise KeyError if no
# such key)
# such key)
del d[key]
# delete data stored at key (raises KeyError
del d[key]
# delete data stored at key (raises KeyError
# if no such key)
# if no such key)
flag = d.has_key(key)
# true if the key exists
flag = d.has_key(key)
# true if the key exists
list = d.keys()
# a list of all existing keys (slow!)
list = d.keys()
# a list of all existing keys (slow!)
d.close()
# close it
d.close()
# close it
Dependent on the implementation, closing a persistent dictionary may
Dependent on the implementation, closing a persistent dictionary may
or may not be necessary to flush changes to disk.
or may not be necessary to flush changes to disk.
...
@@ -31,127 +31,127 @@ or may not be necessary to flush changes to disk.
...
@@ -31,127 +31,127 @@ or may not be necessary to flush changes to disk.
# Try using cPickle and cStringIO if available.
# Try using cPickle and cStringIO if available.
try
:
try
:
from
cPickle
import
Pickler
,
Unpickler
from
cPickle
import
Pickler
,
Unpickler
except
ImportError
:
except
ImportError
:
from
pickle
import
Pickler
,
Unpickler
from
pickle
import
Pickler
,
Unpickler
try
:
try
:
from
cStringIO
import
StringIO
from
cStringIO
import
StringIO
except
ImportError
:
except
ImportError
:
from
StringIO
import
StringIO
from
StringIO
import
StringIO
class
Shelf
:
class
Shelf
:
"""Base class for shelf implementations.
"""Base class for shelf implementations.
This is initialized with a dictionary-like object.
This is initialized with a dictionary-like object.
See the module's __doc__ string for an overview of the interface.
See the module's __doc__ string for an overview of the interface.
"""
"""
def
__init__
(
self
,
dict
):
def
__init__
(
self
,
dict
):
self
.
dict
=
dict
self
.
dict
=
dict
def
keys
(
self
):
def
keys
(
self
):
return
self
.
dict
.
keys
()
return
self
.
dict
.
keys
()
def
__len__
(
self
):
def
__len__
(
self
):
return
len
(
self
.
dict
)
return
len
(
self
.
dict
)
def
has_key
(
self
,
key
):
def
has_key
(
self
,
key
):
return
self
.
dict
.
has_key
(
key
)
return
self
.
dict
.
has_key
(
key
)
def
get
(
self
,
key
,
default
=
None
):
def
get
(
self
,
key
,
default
=
None
):
if
self
.
dict
.
has_key
(
key
):
if
self
.
dict
.
has_key
(
key
):
return
self
[
key
]
return
self
[
key
]
return
default
return
default
def
__getitem__
(
self
,
key
):
def
__getitem__
(
self
,
key
):
f
=
StringIO
(
self
.
dict
[
key
])
f
=
StringIO
(
self
.
dict
[
key
])
return
Unpickler
(
f
).
load
()
return
Unpickler
(
f
).
load
()
def
__setitem__
(
self
,
key
,
value
):
def
__setitem__
(
self
,
key
,
value
):
f
=
StringIO
()
f
=
StringIO
()
p
=
Pickler
(
f
)
p
=
Pickler
(
f
)
p
.
dump
(
value
)
p
.
dump
(
value
)
self
.
dict
[
key
]
=
f
.
getvalue
()
self
.
dict
[
key
]
=
f
.
getvalue
()
def
__delitem__
(
self
,
key
):
def
__delitem__
(
self
,
key
):
del
self
.
dict
[
key
]
del
self
.
dict
[
key
]
def
close
(
self
):
def
close
(
self
):
try
:
try
:
self
.
dict
.
close
()
self
.
dict
.
close
()
except
:
except
:
pass
pass
self
.
dict
=
0
self
.
dict
=
0
def
__del__
(
self
):
def
__del__
(
self
):
self
.
close
()
self
.
close
()
def
sync
(
self
):
def
sync
(
self
):
if
hasattr
(
self
.
dict
,
'sync'
):
if
hasattr
(
self
.
dict
,
'sync'
):
self
.
dict
.
sync
()
self
.
dict
.
sync
()
class
BsdDbShelf
(
Shelf
):
class
BsdDbShelf
(
Shelf
):
"""Shelf implementation using the "BSD" db interface.
"""Shelf implementation using the "BSD" db interface.
This adds methods first(), next(), previous(), last() and
This adds methods first(), next(), previous(), last() and
set_location() that have no counterpart in [g]dbm databases.
set_location() that have no counterpart in [g]dbm databases.
The actual database must be opened using one of the "bsddb"
The actual database must be opened using one of the "bsddb"
modules "open" routines (i.e. bsddb.hashopen, bsddb.btopen or
modules "open" routines (i.e. bsddb.hashopen, bsddb.btopen or
bsddb.rnopen) and passed to the constructor.
bsddb.rnopen) and passed to the constructor.
See the module's __doc__ string for an overview of the interface.
See the module's __doc__ string for an overview of the interface.
"""
"""
def
__init__
(
self
,
dict
):
def
__init__
(
self
,
dict
):
Shelf
.
__init__
(
self
,
dict
)
Shelf
.
__init__
(
self
,
dict
)
def
set_location
(
self
,
key
):
def
set_location
(
self
,
key
):
(
key
,
value
)
=
self
.
dict
.
set_location
(
key
)
(
key
,
value
)
=
self
.
dict
.
set_location
(
key
)
f
=
StringIO
(
value
)
f
=
StringIO
(
value
)
return
(
key
,
Unpickler
(
f
).
load
())
return
(
key
,
Unpickler
(
f
).
load
())
def
next
(
self
):
def
next
(
self
):
(
key
,
value
)
=
self
.
dict
.
next
()
(
key
,
value
)
=
self
.
dict
.
next
()
f
=
StringIO
(
value
)
f
=
StringIO
(
value
)
return
(
key
,
Unpickler
(
f
).
load
())
return
(
key
,
Unpickler
(
f
).
load
())
def
previous
(
self
):
def
previous
(
self
):
(
key
,
value
)
=
self
.
dict
.
previous
()
(
key
,
value
)
=
self
.
dict
.
previous
()
f
=
StringIO
(
value
)
f
=
StringIO
(
value
)
return
(
key
,
Unpickler
(
f
).
load
())
return
(
key
,
Unpickler
(
f
).
load
())
def
first
(
self
):
def
first
(
self
):
(
key
,
value
)
=
self
.
dict
.
first
()
(
key
,
value
)
=
self
.
dict
.
first
()
f
=
StringIO
(
value
)
f
=
StringIO
(
value
)
return
(
key
,
Unpickler
(
f
).
load
())
return
(
key
,
Unpickler
(
f
).
load
())
def
last
(
self
):
def
last
(
self
):
(
key
,
value
)
=
self
.
dict
.
last
()
(
key
,
value
)
=
self
.
dict
.
last
()
f
=
StringIO
(
value
)
f
=
StringIO
(
value
)
return
(
key
,
Unpickler
(
f
).
load
())
return
(
key
,
Unpickler
(
f
).
load
())
class
DbfilenameShelf
(
Shelf
):
class
DbfilenameShelf
(
Shelf
):
"""Shelf implementation using the "anydbm" generic dbm interface.
"""Shelf implementation using the "anydbm" generic dbm interface.
This is initialized with the filename for the dbm database.
This is initialized with the filename for the dbm database.
See the module's __doc__ string for an overview of the interface.
See the module's __doc__ string for an overview of the interface.
"""
"""
def
__init__
(
self
,
filename
,
flag
=
'c'
):
def
__init__
(
self
,
filename
,
flag
=
'c'
):
import
anydbm
import
anydbm
Shelf
.
__init__
(
self
,
anydbm
.
open
(
filename
,
flag
))
Shelf
.
__init__
(
self
,
anydbm
.
open
(
filename
,
flag
))
def
open
(
filename
,
flag
=
'c'
):
def
open
(
filename
,
flag
=
'c'
):
"""Open a persistent dictionary for reading and writing.
"""Open a persistent dictionary for reading and writing.
Argument is the filename for the dbm database.
Argument is the filename for the dbm database.
See the module's __doc__ string for an overview of the interface.
See the module's __doc__ string for an overview of the interface.
"""
"""
return
DbfilenameShelf
(
filename
,
flag
)
return
DbfilenameShelf
(
filename
,
flag
)
Lib/stringold.py
View file @
13a2c279
...
@@ -199,10 +199,10 @@ def atof(s):
...
@@ -199,10 +199,10 @@ def atof(s):
"""
"""
if
type
(
s
)
==
_StringType
:
if
type
(
s
)
==
_StringType
:
return
_float
(
s
)
return
_float
(
s
)
else
:
else
:
raise
TypeError
(
'argument 1: expected string, %s found'
%
raise
TypeError
(
'argument 1: expected string, %s found'
%
type
(
s
).
__name__
)
type
(
s
).
__name__
)
# Convert string to integer
# Convert string to integer
def
atoi
(
*
args
):
def
atoi
(
*
args
):
...
@@ -217,18 +217,18 @@ def atoi(*args):
...
@@ -217,18 +217,18 @@ def atoi(*args):
"""
"""
try
:
try
:
s
=
args
[
0
]
s
=
args
[
0
]
except
IndexError
:
except
IndexError
:
raise
TypeError
(
'function requires at least 1 argument: %d given'
%
raise
TypeError
(
'function requires at least 1 argument: %d given'
%
len
(
args
))
len
(
args
))
# Don't catch type error resulting from too many arguments to int(). The
# Don't catch type error resulting from too many arguments to int(). The
# error message isn't compatible but the error type is, and this function
# error message isn't compatible but the error type is, and this function
# is complicated enough already.
# is complicated enough already.
if
type
(
s
)
==
_StringType
:
if
type
(
s
)
==
_StringType
:
return
_apply
(
_int
,
args
)
return
_apply
(
_int
,
args
)
else
:
else
:
raise
TypeError
(
'argument 1: expected string, %s found'
%
raise
TypeError
(
'argument 1: expected string, %s found'
%
type
(
s
).
__name__
)
type
(
s
).
__name__
)
# Convert string to long integer
# Convert string to long integer
...
@@ -245,18 +245,18 @@ def atol(*args):
...
@@ -245,18 +245,18 @@ def atol(*args):
"""
"""
try
:
try
:
s
=
args
[
0
]
s
=
args
[
0
]
except
IndexError
:
except
IndexError
:
raise
TypeError
(
'function requires at least 1 argument: %d given'
%
raise
TypeError
(
'function requires at least 1 argument: %d given'
%
len
(
args
))
len
(
args
))
# Don't catch type error resulting from too many arguments to long(). The
# Don't catch type error resulting from too many arguments to long(). The
# error message isn't compatible but the error type is, and this function
# error message isn't compatible but the error type is, and this function
# is complicated enough already.
# is complicated enough already.
if
type
(
s
)
==
_StringType
:
if
type
(
s
)
==
_StringType
:
return
_apply
(
_long
,
args
)
return
_apply
(
_long
,
args
)
else
:
else
:
raise
TypeError
(
'argument 1: expected string, %s found'
%
raise
TypeError
(
'argument 1: expected string, %s found'
%
type
(
s
).
__name__
)
type
(
s
).
__name__
)
# Left-justify a string
# Left-justify a string
...
@@ -298,8 +298,8 @@ def center(s, width):
...
@@ -298,8 +298,8 @@ def center(s, width):
if
n
<=
0
:
return
s
if
n
<=
0
:
return
s
half
=
n
/
2
half
=
n
/
2
if
n
%
2
and
width
%
2
:
if
n
%
2
and
width
%
2
:
# This ensures that center(center(s, i), j) = center(s, j)
# This ensures that center(center(s, i), j) = center(s, j)
half
=
half
+
1
half
=
half
+
1
return
' '
*
half
+
s
+
' '
*
(
n
-
half
)
return
' '
*
half
+
s
+
' '
*
(
n
-
half
)
# Zero-fill a number, e.g., (12, 3) --> '012' and (-3, 3) --> '-03'
# Zero-fill a number, e.g., (12, 3) --> '012' and (-3, 3) --> '-03'
...
@@ -318,7 +318,7 @@ def zfill(x, width):
...
@@ -318,7 +318,7 @@ def zfill(x, width):
if
n
>=
width
:
return
s
if
n
>=
width
:
return
s
sign
=
''
sign
=
''
if
s
[
0
]
in
(
'-'
,
'+'
):
if
s
[
0
]
in
(
'-'
,
'+'
):
sign
,
s
=
s
[
0
],
s
[
1
:]
sign
,
s
=
s
[
0
],
s
[
1
:]
return
sign
+
'0'
*
(
width
-
n
)
+
s
return
sign
+
'0'
*
(
width
-
n
)
+
s
# Expand tabs in a string.
# Expand tabs in a string.
...
@@ -333,12 +333,12 @@ def expandtabs(s, tabsize=8):
...
@@ -333,12 +333,12 @@ def expandtabs(s, tabsize=8):
"""
"""
res
=
line
=
''
res
=
line
=
''
for
c
in
s
:
for
c
in
s
:
if
c
==
'
\
t
'
:
if
c
==
'
\
t
'
:
c
=
' '
*
(
tabsize
-
len
(
line
)
%
tabsize
)
c
=
' '
*
(
tabsize
-
len
(
line
)
%
tabsize
)
line
=
line
+
c
line
=
line
+
c
if
c
==
'
\
n
'
:
if
c
==
'
\
n
'
:
res
=
res
+
line
res
=
res
+
line
line
=
''
line
=
''
return
res
+
line
return
res
+
line
# Character translation through look-up table.
# Character translation through look-up table.
...
@@ -387,14 +387,14 @@ def maketrans(fromstr, tostr):
...
@@ -387,14 +387,14 @@ def maketrans(fromstr, tostr):
"""
"""
if
len
(
fromstr
)
!=
len
(
tostr
):
if
len
(
fromstr
)
!=
len
(
tostr
):
raise
ValueError
,
"maketrans arguments must have same length"
raise
ValueError
,
"maketrans arguments must have same length"
global
_idmapL
global
_idmapL
if
not
_idmapL
:
if
not
_idmapL
:
_idmapL
=
map
(
None
,
_idmap
)
_idmapL
=
map
(
None
,
_idmap
)
L
=
_idmapL
[:]
L
=
_idmapL
[:]
fromstr
=
map
(
ord
,
fromstr
)
fromstr
=
map
(
ord
,
fromstr
)
for
i
in
range
(
len
(
fromstr
)):
for
i
in
range
(
len
(
fromstr
)):
L
[
fromstr
[
i
]]
=
tostr
[
i
]
L
[
fromstr
[
i
]]
=
tostr
[
i
]
return
joinfields
(
L
,
""
)
return
joinfields
(
L
,
""
)
# Substring replacement (global)
# Substring replacement (global)
...
@@ -428,4 +428,4 @@ try:
...
@@ -428,4 +428,4 @@ try:
from
strop
import
maketrans
,
lowercase
,
uppercase
,
whitespace
from
strop
import
maketrans
,
lowercase
,
uppercase
,
whitespace
letters
=
lowercase
+
uppercase
letters
=
lowercase
+
uppercase
except
ImportError
:
except
ImportError
:
pass
# Use the original versions
pass
# Use the original versions
Lib/urllib2.py
View file @
13a2c279
This diff is collapsed.
Click to expand it.
Lib/whichdb.py
View file @
13a2c279
...
@@ -56,7 +56,7 @@ def whichdb(filename):
...
@@ -56,7 +56,7 @@ def whichdb(filename):
# BSD hash v2 has a 12-byte NULL pad in front of the file type
# BSD hash v2 has a 12-byte NULL pad in front of the file type
try
:
try
:
(
magic
,)
=
struct
.
unpack
(
"=l"
,
s16
[
-
4
:])
(
magic
,)
=
struct
.
unpack
(
"=l"
,
s16
[
-
4
:])
except
struct
.
error
:
except
struct
.
error
:
return
""
return
""
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment