Python模块导入函数报错求助:无法从converters.py导入指定函数
解决Python模块导入失败的问题
排查与修复步骤
1. 核对文件基础信息
- 确认
converters.py和Helloworld - youtube.py完全在同一目录下,没有被放在不同子文件夹里。 - 检查
converters.py的文件名:拼写、大小写要完全一致(比如别写成Converter.py或者converter.py),Linux/macOS下大小写敏感,PyCharm会严格识别。
2. 排除命名冲突
- 看看当前目录里有没有其他叫
converters.py的文件,或者有没有和这个模块重名的文件夹(文件夹名如果是converters,也会干扰模块导入)。 - 确认你的项目目录被PyCharm标记为源码根:右键项目目录 →
Mark Directory as→Sources Root,这样PyCharm才会把这个目录下的文件当作可导入模块。
3. 检查converters.py的内容
- 打开
converters.py,确认metres_to_feet函数的定义没有语法错误,比如缩进是否正确、函数名拼写有没有错(别写成meters_to_feet)。 - 确保文件里没有覆盖函数的代码,比如不要出现
metres_to_feet = 5这种把函数名当成变量用的情况。
4. 清理PyCharm缓存
PyCharm的缓存偶尔会抽风,导致模块识别异常:
- 点顶部菜单栏的
File→Invalidate Caches...→ 选Invalidate and Restart,重启后再试导入。
5. 用最简代码测试
新建一个test.py放在同一目录,写以下代码:
import converters # 打印模块里的所有属性,看看有没有目标函数 print(dir(converters))
运行后如果输出里有'metres_to_feet',说明模块没问题,问题出在Helloworld - youtube.py的其他代码;如果没有,回到前面的步骤重新排查。
内容的提问来源于stack exchange,提问作者Charlie
相关产品推荐
相关产品推荐

