Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / PyCharm新建Python文件名称与将导入的模块名相同会出现的问题

问题

在进行测试下面一段间断的代码时,运行时总是发现Pycharm报错,提示:AttributeError: "module" object has no attribute "call"
但是在Python解释器中直接输入下面的代码却没有任何问题,甚是奇怪。import subprocessdef test():subprocess(("ls", "-l")if __name__ == "__main__:test()

分析

  • 在Pycharm的Terminal中输入python3进入解释器环境;
  • 在解释器中导入模块subprocess
  • 输入dir(subprocess)后,发现了问题所在,发现这个subprocess模块确实没有call方法。于是想到当前的文件名是subprocess.py,所以在导入模块时,Pycharm默认导入了这个。
  • 将文件名修改后,测试可以正常运行了。

总结

  • 千万不要在pycharm中让新建的文件名和常用的模块名称相同!!!否则,可能会导致模块导入失败的问题发生!!!切记!!!!
Ubuntu 10.10安装PyCharm1.5 http://www.linuxidc.com/Linux/2011-09/43669.htmUbuntu 11.10安装Python编辑器pycharm(含注册码) http://www.linuxidc.com/Linux/2012-10/71935.htmPyCharm 的详细介绍:请点这里
PyCharm 的下载地址:请点这里本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-09/123564.htm