【问题标题】:Importing a method from user-defined module gives Attribute Error从用户定义的模块导入方法会产生属性错误
【发布时间】:2020-01-13 03:14:32
【问题描述】:

我正在阅读 python 速成课程书,我想导入一个我已经编写了它的函数并将其正确保存在路径中的模块。 使用pycharm,python 3.7

我已经正确编写了代码,并且我知道它在导入的模块中存在(属性)。

代码是这样的:

def make_pizza(size, *toppings):
"""Summarize the pizza we are about to make."""
   print(f"\nMaking a {size}-inch pizza with the following toppings:")
   for topping in toppings:
      print(f"- {topping}")

但我收到此错误AttributeError: module 'pizza' has no attribute 'make_pizza'

我不知道该怎么办,我真的需要解决这个问题才能继续学习。

【问题讨论】:

  • 向我们展示引发此错误的代码,即导入代码
  • make_pizza() 是一种方法,但你提到它作为属性?你是把它作为函数还是属性导入?
  • 对不起@amrs-tech 我的意思是方法。
  • 尝试使用print(dir(pizza))检查包
  • 再次签出@Tomerikoo先生

标签: python-3.x error-handling attributeerror


【解决方案1】:

你应该保存你的模块,然后检查目录结构,如果是这样,

|-pizza/
|--pizza.py

然后尝试在另一个 python 程序中导入披萨模块:

from pizza import pizza
pizza.make_pizza(10,...)

我希望这会有所帮助。这可能是因为你的包结构。

【讨论】:

  • 感谢它的工作,非常感谢它。现在我可以导入并查看我想要的输出。谢谢。
  • 如果有效,请采纳答案,希望对其他人也有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-29
  • 2019-07-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多