python - python找不到自定义模块
问题描述
我正在将一个整体脚本分解为模块。我创建了一个文件standard_modules.py
,我用它来导入我正在创建的所有模块。
然后在具有 main() 我正在做的脚本中:
from standard_modules import *
from standard_functions import *
在里面standard_modules.py
我有这条线:
from list_users import list_users
我正在打印我的路径:
import sys
print('\n'.join(sys.path))
我可以在那里看到我的模块所在的路径:
C:\Users\tdunphy\Desktop\important_folders\git\aws_scripts\python\aws_iam_utils
我已经验证了我的模块文件在那里:
ls -l C:\Users\tdunphy\Desktop\important_folders\git\aws_scripts\python\aws_iam_utils\list_users.py
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 7/30/2019 4:30 PM 3256 list_users.py
我的具有主要功能的脚本位于同一目录中。
但是当我尝试运行 list_users 模块时,我的脚本找不到它:
Traceback (most recent call last):
File ".\aws_iam_utils.py", line 122, in <module>
main()
File ".\aws_iam_utils.py", line 91, in main
list_users(iam_client, aws_account, interactive)
NameError: name 'list_users' is not defined
如果我将from list_users import list_users
list_users 函数放入具有 main() 的脚本中。
我究竟做错了什么?我怎样才能让我的脚本找到这个和我正在创建的其他模块?
解决方案
我认为你应该from list_users import list_users
改为from standard_modules.list_users import list_users
推荐阅读
- sqlite - 复合主键上的 SQLITE JOIN 表
- android - Android(Unity + Firebase)上的选择图像和上传问题
- html - Django - 如何在页脚中使用表单
- ruby-on-rails - 在我的 Rails 5 应用程序中发出 POST 请求时,为什么会收到“Completed 406 Not Acceptable”?
- c# - 级联删除在运行时使用 EF Core 配置的模型
- go - 如何在我的 main.go 中导入 go 接口包?
- android - 如何修复 android 6.0(API 23)的“错误膨胀类 com.google.android.material.chip.Chip”(具有自定义样式)
- ios - 扩展程序和应用程序之间共享核心数据
- python - 如何在 TensorFlow 中构造矩阵的这些函数?
- javascript - 更改跨度图标 onClick 并移动部分?