Simple import in python 3 errors with complaint about bytes

Chris Kaynor ckaynor at
Tue Oct 21 01:45:23 CEST 2014

Are you perhaps doing an import inside of the C code?


On Mon, Oct 20, 2014 at 4:29 PM, Mike Boyle <moboyle79 at> wrote:

> I'm modifying an extension written with the c-api to have a datatype of
> quaternions <>, with one of the
> goals being python 3 support.  It works nicely in python 2.7, but for
> python 3.x gives an error that I can't find anywhere on the google.  The
> directory looks like this:
> .../site-packages/
>     quaternion/
> contains a line like this:
>     from .numpy_quaternion import quaternion
> But when it hits that line, python 3 throws its hands up in disgust:
> > python -c 'import quaternion'
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
>   File
> "/Users/mynamehere/.continuum/anaconda/envs/py3k/lib/python3.4/site-packages/quaternion/",
> line 3, in <module>
>     from .numpy_quaternion import quaternion
> TypeError: __import__() argument 1 must be str, not bytes
> The only thing before that line is `import numpy as np`, which typically
> works just fine.  Obviously, I'm using python3.4 to compile and (attempt
> to) import (with a conda environment), so it's not something as dumb as
> using the wrong python.  Also, this is the result for both me on my laptop
> and Travis-CI <>, so it
> doesn't seem to be anything peculiar to my installation.  I've posted this
> question on stackoverflow, but haven't gotten much interest; the only
> responder suggested I ask here instead.
> Any ideas what's going wrong, or where I can go from here?
> Thanks,
> Mike
> --
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Python-list mailing list