【问题标题】:Python. Cannot import multiple functions from the filePython。无法从文件中导入多个函数
【发布时间】:2020-07-25 19:15:47
【问题描述】:

我有一个奇怪的问题,我不明白。我有一个 date_import.py 文件,里面有几个函数。 (我不想在这里展示这些函数,因为它们都很长。)我想在 Jupyter 中导入这些函数。所以我写了'from date_import import func1'并且它有效。但是如果我写'from date_import import func1,func2',我会得到答案“无法导入名称 func2”。另外,如果我写'from date_import import func2',我会得到相同的答案。起初我以为 python 不知何故无法看到我文件中的更改。但是,如果我更改 func1 中的代码并使用 inspect.getsource ,我可以看到 python 接受更改。但是我还是不能导入其他函数,只能导入func1。 有人看到这种行为并且知道一些方法吗? 提前致谢。

PS。这是函数2。

def func2(stichtag_sql):

    sql = """(select distinct .....
)"""

    tab = sqlContext.read.jdbc(url=jdbcURL, table=sql, properties=prop).cache()
    totale_wbs = tab.toPandas()
    totale_wbs.columns = map(str.lower, totale_wbs.columns)

    totale_wbs.kdnr =totale_wbs.kdnr.astype(str)

    return totale_wbs

【问题讨论】:

标签: python import


【解决方案1】:

尝试:

from date_import import (func1, func2)

【讨论】:

    【解决方案2】:

    如果您在导入模块 date_import 后创建了函数 func_2,则必须重新导入模块:

    import importlib
    importlib.reload(date_import)
    

    【讨论】:

    • 感谢您的建议。它不起作用,但我找到了相关的解决方案。重命名文件就足够了。 :)
    猜你喜欢
    • 2018-02-21
    • 2021-09-20
    • 1970-01-01
    • 2018-10-13
    • 2022-12-18
    • 1970-01-01
    • 1970-01-01
    • 2011-10-09
    • 2019-05-10
    相关资源
    最近更新 更多