UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 308: character maps to <undefined>

Joel Goldstick joel.goldstick at gmail.com
Fri Nov 14 07:30:01 EST 2014


On Fri, Nov 14, 2014 at 6:57 AM,  <satishmlmlml at gmail.com> wrote:
> For 'mimetypes' in the code given below, python is giving the following error. Kindly help.
>
>>>> import os
>>>> matches = []
>>>> for (dirname, dirshere, fileshere) in os.walk(r'C:\Python34'):
>         for filename in fileshere:
>                 if filename.endswith('.py'):
>                         pathname = os.path.join(dirname, filename)
>                         if 'mimetypes' in open(pathname).read():
>                                 matches.append(pathname)
>
>
> Traceback (most recent call last):
>   File "<pyshell#165>", line 5, in <module>
>     if 'mimetypes' in open(pathname).read():
>   File "C:\Python34\lib\encodings\cp1252.py", line 23, in decode
>     return codecs.charmap_decode(input,self.errors,decoding_table)[0]
> UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 308: character maps to <undefined>


You should understand encodings.  There is lots of literature on the
web about unicode and python.  In your case, the fact that you are
reading a file called cp1252.py and your code is raising a
UnicodeDecodeError should be a clue
> --
> https://mail.python.org/mailman/listinfo/python-list



-- 
Joel Goldstick
http://joelgoldstick.com



More information about the Python-list mailing list