On Friday, November 9, 2012 4:34:19 PM UTC-5, Prasad, Ramit wrote: > danielk wrote: > > > > > > The database I'm using stores information as a 3-dimensional array. The > > delimiters between elements are > > > chr(252), chr(253) and chr(254). So a record can look like this (example > > only uses one of the delimiters for > > > simplicity): > > > > > > name + chr(254) + address + chr(254) + city + chr(254) + st + chr(254) + zip > > > > > > The other delimiters can be embedded within each field. For example, if > > there were multiple addresses for 'name' > > > then the 'address' field would look like this: > > > > > > addr1 + chr(253) + addr2 + chr(253) + addr3 + etc ... > > > > > > I use Python to connect to the database using subprocess.Popen to run a > > server process. Python requests > > > 'actions' like 'read' and 'write' to the server process, whereby the server > > process performs the actions. Some > > > actions require that the server send back information in the form of > > records that contain those delimiters. > > > > > > I have __str__ and __repr__ methods in the classes but Python is choking on > > those characters. Surely, I could > > > convert those characters on the server before sending them to Python and > > that is what I'm probably going to do, > > > so guess I've answered my own question. On Python 2, it just printed the > > 'extended' ASCII representation. > > > > > > I guess the question I have is: How do you tell Python to use a specific > > encoding for 'print' statements when I > > > know there will be characters outside of the ASCII range of 0-127? > > > > You just need to change the string to one that is not > > trying to use the ASCII codec when printing. > > > > print(chr(253).decode('latin1')) # change latin1 to your > > # chosen encoding. > > ý > > > > > > ~Ramit > > > > > > This email is confidential and subject to important disclaimers and > > conditions including on offers for the purchase or sale of > > securities, accuracy and completeness of information, viruses, > > confidentiality, legal privilege, and legal entity disclaimers, > > available at http://www.jpmorgan.com/pages/disclosures/email.
D:\home\python>pytest.py Traceback (most recent call last): File "D:\home\python\pytest.py", line 1, in <module> print(chr(253).decode('latin1')) AttributeError: 'str' object has no attribute 'decode' Do I need to import something? -- http://mail.python.org/mailman/listinfo/python-list