[Tutor] surprising len() results ???
Tom Cloyd
tomcloyd at bestmindhealth.com
Tue Aug 9 11:10:37 CEST 2005
List,
I'm running a program I wrote which I've run a number of times before,
successfully.
I use the following statement to fix the problem of utf-8 codes which blow
up a later part of my production process that I cannot fix:
trans_table =
maketrans('()ÄäÀÁàáÇçÈÉèéÌÍìíÑñÒÓòóÙÚúù','--AaAAaaCcEEeeIIiiNnOOooUUuu')
As I said, this has been working fine. But no longer.
I previously have been running the ActivePython-2.4.1-247-win32 Python
from ActiveState, and executing my program in ActiveState's Komodo IDE.
Due to some problems with the Boa Constructor IDE, I removed ActivePython
and ran the Python 2.4.1 Windows installer from python.org. I mention
this because I'm wondering if this might be behind my problem. I'm still
running from within Komodo.
Today, when running my program, when execution gets to the maketrans()
function above, I get:
Traceback (most recent call last):
File "C:\Program Files\ActiveState Komodo
3.1\dbgp\pythonlib\dbgp\client.py", line 1799, in runMain
self.dbg.runfile(debug_args[0], debug_args)
File "C:\Program Files\ActiveState Komodo
3.1\dbgp\pythonlib\dbgp\client.py", line 1524, in runfile
h_execfile(file, args, module=main, tracer=self)
File "C:\Program Files\ActiveState Komodo
3.1\dbgp\pythonlib\dbgp\client.py", line 590, in __init__
execfile(file, globals, locals)
File "C:\Documents and Settings\Tom C\My Documents\Python projects -
Toms\li-database\LI-db-use--dict_db.py", line 49, in __main__
trans_table =
maketrans('()ÄäÀÁàáÇçÈÉèéÌÍìíÑñÒÓòóÙÚúù','--AaAAaaCcEEeeIIiiNnOOooUUuu')
ValueError: maketrans arguments must have same length
This makes no sense to me. So, I then broke up the maketrans() function
statement's two parameters, and ran these two statements from within the
program:
print len('()ÄäÀÁàáÇçÈÉèéÌÍìíÑñÒÓòóÙÚúù')
print len('--AaAAaaCcEEeeIIiiNnOOooUUuu')
the result:
54
28
I'm completely mystified by this. All of it. None of it makes sense. This
program was working fine. Now it doesn't. And those two parameter string
are plainly the same length, but Python doesn't think so.
All help will be gratefully accepted!
-- t.
======================================================
Tom Cloyd
Bellingham, Washington, U.S.A: (360) 920-1226
<< BestMindHealth.com / tc at bestmindhealth.com >>
======================================================
Using Opera's revolutionary e-mail client (program):
http://www.opera.com/mail/
More information about the Tutor
mailing list