I'm really new to python. I'm using python<2.7. I have to import a file whose name I don't know at start. In fact I have to pass the name of file through command prompt, now I have read the name and stored in variable, but I don't know how to pass it to import statement. I'm trying the code
str = sys.argv[lastIndex]
from "%s" import *,str
but it's giving the error
File "IngestDataToMongo.py", line 86
from "%s" import *,str
^
SyntaxError: invalid syntax
So how to do it. Also is it possible with python <2.7, because for some reasons I can't change the version of Python or install anything where this code is running.
You can use __import__()
function instead to import modules. It accepts variables as its arguments.
But first of all, make sure you really need that - 90% of the time people do not really need that function.
You should use importlib module
import importlib
mdl = 'urllib'
your_module = importlib.import_module(mdl)
your_module.quote
>>> <function urllib.quote>
EDIT
Thanks to Tadeck - This does work for python 2.7 and 3.1+
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With