I'm modifying an extension written with the c-api to have a datatype of 
quaternions <https://github.com/moble/numpy_quaternion>, 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/
        __init__.py
        numpy_quaternion.so

__init__.py 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/__init__.py",
 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 
<https://travis-ci.org/moble/numpy_quaternion>, 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                                      
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to