我已成功部署了一个 Azure 函数!但它失败了。Result: FailureException: ModuleNotFoundError: No module named 'CurrencyConversion'Stack: File "/azure-functions-host/workers/python/3.7/LINUX/X64/azure_functions_worker/dispatcher.py", line 242, in _handle__function_load_request func_request.metadata.entry_point)File "/azure-functions-host/workers/python/3.7/LINUX/X64/azure_functions_worker/loader.py", line 66, in load_function mod = importlib.import_module(fullmodname)File "/usr/local/lib/python3.7/importlib/__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level)File "/home/site/wwwroot/CC_Timer/__init__.py", line 3, in <module> import CurrencyConversion as cc因此,从上面的错误中,我们可以看出问题是将我的帮助程序函数从 CurrencyConversion.py 导入到init.py。我的代码看起来像这样:import CurrencyConversion as ccimport osimport azure.functions as func我的文件结构是这样的:CCTimer├── __init__.py├── CurrencyConversion.py任何人都可以帮助详细说明上述问题吗?谢谢。
2 回答
HUX布斯
TA贡献1876条经验 获得超6个赞
在 Python3 中,隐式相对导入是被禁止的。
你可以做的是 。例如,在您的情况下from .module import name
from .CurrencyConversion import classname/funcname
您可以查看python3文档 https://docs.python.org/release/3.0.1/whatsnew/3.0.html#removed-syntax
呼唤远方
TA贡献1856条经验 获得超11个赞
在官方文档中,有关于如何导入函数代码中的模块的详细说明:导入行为。
可以使用显式相对引用和绝对引用在函数代码中导入模块。
在单元测试下,您可以从文件夹中找到示例导入模块。
因此,您可以使用 导入 。from __app__.CCTimer import CurrencyConversion
注意:现在假设python 3.7有一个错误,所以如果你使用的是python 3.7,显式相对方式更好。
添加回答
举报
0/150
提交
取消