如何从../加载python文件

时间:2019-05-10 17:17:17

标签: python-3.x python-import

我想知道如何在脚本运行之前从目录的文件中加载一个python模块。

示例:

../
├── api
│   ├── Group.py
│   ├── Trade.py
│   └── User.py
├── client.py

Group.py如何导入client.py?

谢谢,伊拉克。

2 个答案:

答案 0 :(得分:1)

对于其他目录,您可以使用

使用语法

导入模块
  

从foldername.filename导入*

n_good(1_000_000, "047")

如果文件位于同一文件夹中,则直接使用

  

使用导入后跟文件名

from api.Group import *

答案 1 :(得分:0)

  

导入名为spam的模块时,解释器首先搜索具有该名称的内置模块。如果找不到,它将在变量spam.py给出的目录列表中搜索名为sys.path的文件

>>> import sys
>>> sys.path
['', 'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib', 'C:\\Python36', 'C:\\Python36\\lib\\site-packages']

如果我们观察到第一个''指向当前文件夹,那么为什么我们可以从当前路径导入文件。 要从父级导入,我们将父级文件夹添加到sys.path变量

>>> import os
>>> sys.path.append(os.path.abspath("./.."))
>>> sys.path
['', 'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib', 'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'D:\\Python Programs\\Practice_Imports\\stack']

现在sys.path包含父文件夹,因此我们可以从client.py导入Group.py

>>> import client

选中此link以获得清晰的导入详细信息。