I got this code in Python 2.7:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import logging
import math
import operator
import pickle
import re
import sys
import threading
import time
import unicodedata
from random import shuffle
import currencylayer
import quandl
import requests
from GUI import *
from arduinoSerial import *
from bs4 import BeautifulSoup
from ledDisplay import *
from timeout import timeout
When I run it an error occurs:
from GUI import *
ImportError: No module named GUI
I try to install GUI, but I couldnt:
Try to run this command from the system terminal. Make sure that you use the correct version of 'pip' installed for your Python interpreter located at '/home/in/PycharmProjects/untitled/venv/bin/python
Did I made somehting bad? Could someone help me?
Is there a module called "GUI" that you're trying to import?
Tkinter is the standard Python GUI framework. Maybe you're thinking of that, in which case you would need to use from tkinter import *.
Related
I am trying to implement the code in https://github.com/kexinyi/ns-vqa.
However, when I try the command, python tools/preprocess_questions.py \ ... in the section of "Getting started". I see a message No module named 'utils.programs'.
Then I install utils and which makes import utils work, but import utils.programs does not work.
Does anyone have any idea to solve it?
import os
import argparse
import json
import h5py
import numpy as np
import utils.programs as program_utils # this one cannot be imported
import utils.preprocess as preprocess_utils
import utils.utils as utils
Solution:
Add the below lines at the beginning of preprocess_questions.py file.
import sys
sys.path.insert(0, "..")
This should solve your problem.
Explanation:
It is failing because preprocess_questions.py don't know about the path of utils.programs to import. With the above lines added to the path using .., the required file will be imported.
For more on this refer how importing works in python.
I'm currently learning Python and using spyder 3 as editor.
There are several python packages that I use regularly and, to avoid including them in each new script, I put a list of imports in a script file called autoload.py and hoped that by calling autoload.py the packages in question are automatically loaded. Unfortunately this does not work.
To illustrate, the file autoload.py contains:
import pandas as pd
import os
import matplotlib.pyplot as plt
from functools import reduce
import collections as clct
import numpy as np
import platform
Your help will be appreciated.
Simple, autoload.py contains:
import pandas as pd
import os
import matplotlib.pyplot as plt
from functools import reduce
import collections as clct
import numpy as np
import platform
Your file.py contains:
from autoload import *
file.py load autoload.py content, but surely your IDE throw syntax error before running code. If you try to run, works perfectly. I have tested it in PyCharm and it works.
Anyway, I have to say you that is very bad practice.
Regards.
This worked for me in Spyder 3.1.4(Python 3.6):
autoload.py
import sys
import easygui
test.py
import autoload
print('test')
print(easygui.msgbox('Hello'))
sys.exit()
Like others have mentioned, this is probably not a good approach.
I want to monitor if the file has been changed through using watchdog in Python, however, when I test, the terminal give me a warning,
"C:\Python27\lib\site-packages\watchdog\observers\__init__.py:89:UserWarning:Failed to import read_directory_changes. Fall back to polling.warning.warn("Failed to import read_directory_changes. Fall back to polling")"
I've installed pip to install watchdog, however, I still don't know how this problem occur.
here is the test code:
# coding=utf-8
import sys
import time
import logging
import urllib
import urllib2
import os
# import MySQLdb
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
print "hello"
I want to have my python program installed on linux computers (and later windows if someone can help me with that). Ideally this would work on anyone's computer who has python installed, but not all the required modules. I am thinking of this like a C binary/executable after running gcc / make commands.
The hard part is that I don't understand how to handle all the imports required. I keep failing when using py2exe or similiar things because I am using 'GDAL'. So here is what I want to put in my setup.py, but I am so confused. Any help greatly appreciated.
setup.py:
from disutils.core import setup
setup(
name='gui',
version='1.0',
py_modules=['gui'],
install_requires=[],
)
My main files is "gui.py". When I run ipython and then run gui.py my program executes perfectly.
Here are the import statements from the gui.py and the files it includes for reference:
gui.py:
#!/usr/bin/env python
from Tkinter import *
import tkFileDialog
from scipy import *
import spleem_image_class as sic
import spleem_image_display_class as sidc
import matplotlib.pyplot as plt
// code ...
spleem_image_class.py:
# -*- coding: iso-8859-15 -*-
from osgeo import gdal
import scipy
import scipy.interpolate
import itertools
from scipy import ndimage
from scipy.ndimage import morphology
from scipy import math
from scipy import *
import matplotlib.pyplot as plt
from scipy import linalg
// code ...
spleem_image_display_class.py
#!/usr/bin/env python
# -*- coding: iso-8559-15 -*-
import matplotlib.pyplot as plt
import matplotlib.colors
import matplotlib.cm as cm
import colorsys
import scipy.optimize as optimize
from scipy import *
import scipy
import numpy
import sys
import itertools
import spleem_image_class as SI
import pickle
// code ...
It looks like in your setup() you need something like this: packages=['distutils', 'distutils.command'], according to the distutils documentation.
I've two Python scripts as given below
inner.py
#!/usr/bin/python
import os
import datetime
# <---- Some Code--->
main.py
#!/usr/bin/python
import os
import datetime
# <---- Some Code--->
subprocess.call(["/usr/bin/python",inner.py])
The problem is when the inner.py script is called from the main.py script it doesn't import any modules. For example it says
ImportError: No module named os
But when the script is executed standalone it works fine. Please help
The following works perfectly fine for me, and it's modified because some of your code seemed a little incomplete.
inner.py
#!/usr/bin/python
import os
import datetime
print os.getcwd()
main.py
#!/usr/bin/python
import os
import datetime
import subprocess
import sys
# <---- Some Code--->
subprocess.call([sys.executable, "inner.py"])