Using python 2.7 I get this error:
Traceback (most recent call last):
File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/lib/python2.7/cProfile.py", line 199, in <module>
main()
File "/usr/lib/python2.7/cProfile.py", line 165, in main
from optparse import OptionParser
File "/usr/lib/python2.7/optparse.py", line 77, in <module>
import textwrap
File "/usr/lib/python2.7/textwrap.py", line 32, in <module>
class TextWrapper:
File "/usr/lib/python2.7/textwrap.py", line 74, in TextWrapper
whitespace_trans = string.maketrans(_whitespace, ' ' * len(_whitespace))
AttributeError: 'module' object has no attribute 'maketrans'
while running this simple code:
def blah():
orig = ""
for i in range(1000000):
orig += "zim";
blah()
using this call:
$ python -m cProfile string.py
I’m using Ubuntu Natty Narwhal, and installed the package python-profiler (I don’t know if this is necessary).
As the Python tutorial on modules explains:
textwrapdoesimport string. Your script is namedstring.pyand comes first (or at least before the stdlib directories) on the search path, so it is imported. But it doesn’t define the functions and constants expected, e.g. it doesn’t have amaketransmodule. That’s what the error tells you.(The same error should occur if you just run the script without profiling.)