the - How to import python file located in same subdirectory in a pycharm project
python import module (4)
I have an input error in pycharm when debugging and running.
My project structure is rooted properly,
etc./HW3/. so that
HW3 is the root directory.
I have a subfolder in HW3,
util, and a file,
util/util.py. I have another file in
run_tests.py, I have the following import structure,
from util.util import my_functions, etc.
This yields an input error,
from util.util import load_dataset,proportionate_sample
ImportError: No module named 'util.util'; 'util' is not a package
However, in the exact same project, in another directory (same level as
data, I have a file
data/data_prep.py, which also imports functions from
util/util.py using a similar import statement...and it runs without any problems.
Obviously, I am doing this in the course of doing a homework, so please understand: this is ancillary to the scope of the homework.
The problem goes away when I move the file to another directory. So I guess this question is How do I import a python file located in the same directory in a pycharm project? Because pycharm raises an error if I just do
import util and prompts me to use the full name from the root.
Make sure to set the working folder as
You can do it in
Select your working folder and mark it as
Sources. Then Pycharm recognize the working folder as a Source folder for the project and you will be able to simply add other files within that folder by using
from filename.py import mudule1
Not recommended way:
Pycharmyou can simply add
. before the
.py file which you are going to import it from the same folder. In your case it will be
from .util import my_functions
I had the same issue with pycharm, but the actual mistake was that the file I was trying to import didn't have a .py extension, even though I was able to run it as a standalone script. Look in the explorer window and make sure it has a .py extension. If not, right click on the file in the explorer window, pick refactor, and then rename it with a .py extension.
ModuleNotFoundError: No module named 'appTwo'
from django.conf.urls import url,include from django.contrib import admin from appTwo import views urlpatterns = [ url(r'^$',views.index,name='index'), url(r'^admin/', admin.site.urls), url(r'^users/',include('appTwo.urls')), ]
Note: May be a bit unrelated.
I was facing the same issue but I was unable to import a module in the same directory (rather than subdirectory as asked by OP) when running a jupyter notebook (here the directory didn't have __init__.py). Strangely, I had setup python path and interpreter location and everything. None of the other answers helped but changing the directory in python did.
import os os.chdir(/path/to/your/directory/)
PyCharm 2017.3 on