I'm trying to use a package that has the following structure:
The file prova.py contains only the following line:
import bipartite_class
while bipartite_class.py has the following initial lines:
from .nes import *
from .mod import *
from .graphs import *
from .contrib import *
from .null import *
from .tests import *
from getref import *
import pickle
import tempfile
import os
import numpy as np
import networkx as nx
import os.path
When I try to compile prova.py I get the following error:
Traceback (most recent call last):
File "prova.py", line 1, in <module>
import bipartite_class
File "/Desktop/CD_BEST/Bipartito/bipy-master/bipy/bipartite_class.py", line 1, in <module>
from .nes import *
ValueError: Attempted relative import in non-package
If I try to remove the dots in bipartite_class.py I get:
Traceback (most recent call last):
File "prova.py", line 1, in <module>
import bipartite_class
File "/Desktop/CD_BEST/Bipartito/bipy-master/bipy/bipartite_class.py", line 1, in <module>
from nes import *
File "/Desktop/CD_BEST/Bipartito/bipy-master/bipy/nes/_init_.py", line 5, in <module>
from nodf import *
File "/Desktop/CD_BEST/Bipartito/bipy-master/bipy/nes/nodf.py", line 3, in <module>
from ..mainfuncs import *
ValueError: Attempted relative import beyond toplevel package
What should I do?
It looks like you're using this: https://github.com/tpoisot/bipy and that prova.py
is your addition (it would be nice if you include this kind of information in your question in future questions!)
The problem is that bipartite_class
is not a free-standing module, but is a part of the package bipy
. That means you need to import it from outside the package. You need to move prova.py
one directory up, to bipy-master
, and change its contents to:
from bipy import bipartite_class
and then you should be able to run prova.py
.
Even better would be to actually install bipy. Because the project includes a setup.py
, you can run:
python setup.py install
Then you can import bipy
from anywhere, so you can put your programs that use it in their own directory.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.