VS Code中from config import *失效,无法访问同目录config.py变量求助
from config import *无法导入变量的问题 以下是针对你的情况的排查和解决步骤:
确认VS Code选中的Python解释器正确
点击VS Code左下角状态栏显示的Python版本,选择你安装的微软商店版Python 3.11(路径通常为C:\Users\<你的用户名>\AppData\Local\Microsoft\WindowsApps\python.exe)。如果选错了解释器,Python会在错误的环境中查找模块,导致导入失败。确保VS Code打开的是包含两个文件的文件夹作为工作区
不要只单独打开main.py,而是通过文件>打开文件夹选择包含main.py和config.py的文件夹。如果仅打开单个文件,Python的sys.path可能未包含当前文件所在目录,无法找到同文件夹下的模块。检查
config.py的内容格式
确保你要导入的变量是全局定义的,而非嵌套在函数或类内部。例如:# 正确写法(全局变量) DB_HOST = "localhost" DB_PORT = 3306避免这种错误写法:
# 错误写法(变量在函数内,无法全局导入) def load_config(): DB_HOST = "localhost"同时检查
config.py是否有语法错误,语法错误会导致模块无法正常加载。验证导入语句的拼写正确性
Python对大小写敏感,确保config的拼写完全匹配文件名(比如不要写成Config或configs)。可以尝试改用import config,然后通过config.变量名访问,看是否能成功,以此排查是导入问题还是变量访问问题。排查重名冲突
检查当前文件夹下是否存在与config.py重名的文件或文件夹(比如config文件夹),这会导致Python优先导入包而非你的模块,删除或重命名冲突的文件/文件夹即可。确认终端环境的Python版本
在VS Code的终端中运行python --version,确认输出的是Python 3.11。如果显示的是其他版本,说明终端使用的解释器和VS Code选中的不一致,可以重启终端或手动切换到正确的解释器路径。
内容的提问来源于stack exchange,提问作者Duc Huy Nguyen Tran

