Używanie Pythona 2.7 otrzymuję ten błąd:AttributeError: 'moduł' obiekt ma atrybut 'maketrans' podczas uruchamiania cProfile
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'
podczas uruchamiania ten prosty kod:
def blah():
orig = ""
for i in range(1000000):
orig += "zim";
blah()
za pomocą tego połączenia:
$ python -m cProfile string.py
używam Ubuntu Natty Narwhal, a zainstalowany pakiet python-Profiler (nie wiem, czy to jest niez sary).
Morał z tej historii: Nigdy nie nazwać swój program, tak samo jako moduł stdlib. – jathanism
Wow, to sprytny punkt, sprawdzę to jutro i oznaczy to jako poprawną odpowiedź. – Doppelganger