如何使用字符串变量作为位置来访问模块?
我有一个字符串变量 x,并且想要使用输入来调用子文件夹中的模块,如下所示。如何使用该字符串作为路径的一部分?
x = input()
from subfolder.x import y
我的代码从父文件夹“main.py”运行,并使用行:
os.chdir(os.path.dirname(os.path.abspath(__file__)))
设置文件路径。
I have a string variable x, and want to use input to call a module in a subfolder, as shown below. How can I use this string as part of the path?
x = input()
from subfolder.x import y
My code is run from a parent folder 'main.py' and uses the line:
os.chdir(os.path.dirname(os.path.abspath(__file__)))
to set the file path.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果需要动态导入,请查看
importlib.import_module
考虑以下简单示例If you need to dynamically import, take look at
importlib.import_module
consider following simple example根据 Python 文档,以下是
import
语句如何搜索要导入的正确模块或包:来源:Python 2 和 3
因此,您可以使用
sys.path.append
将位置附加到路径,但是一旦关闭 Python,sys.path
将被设置回默认值。所需位置永久添加到 PYTHONPATH 中
或者,您可以通过添加适合您使用的任何 shell 的启动脚本(例如,用于 bash 的 .bashrc ),将
According to Python documentation, here is how an
import
statement searches for the correct module or package to import:Source: Python 2 and 3
So you can use
sys.path.append
to append a location to the path, but once you close Python,sys.path
will be set back to default.Or you can add the desired location permannently to
PYTHONPATH
by addingin a startup script appropriate to whatever shell you're using (
.bashrc
for bash, for example)