艰苦地学习python,练习25

艰苦地学习python,练习25,python,import,Python,Import,大家好,我是python语言的新手,为了更好地理解python,我选择了艰苦的方式来学习python。。。在练习25中,当我们将代码直接导入终端时,我被难住了 >>> import ex25 >>> sentence = "All good things come to those who wait." >>> words = ex25.break_words(sentence) 然后我得到一个属性错误 Traceback (most re

大家好,我是python语言的新手,为了更好地理解python,我选择了艰苦的方式来学习python。。。在练习25中,当我们将代码直接导入终端时,我被难住了

>>> import ex25
>>> sentence = "All good things come to those who wait."
>>> words = ex25.break_words(sentence)
然后我得到一个属性错误

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'break_words'
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
AttributeError:“模块”对象没有属性“断开单词”
我在上使用python 2.7
windows 7请帮助

您的
ex25.py
链接中的代码确实包含该函数-您的代码并不表示您在将代码转录到文件中时遗漏了该函数。检查您的
ex25.py
是否包含页面中的所有代码,特别是是否包含此函数(它是最上面的函数):


考虑将代码粘贴到编辑器中,而不是转录代码,以避免类似错误。

在我看来,该练习并没有指示学习者在导入之前保存文件。为了实现这一点,您必须使用文本编辑器将定义break_words函数的代码保存在一个名为ex25.py的文件中。然后,在同一目录中键入以下内容打开python解释器:

python

您应该能够导入ex25并运行ex25.py模块定义的break_words函数。

那么您在
ex25.py
中定义了什么?
import ex25;dir(ex25)
将告诉您模块提供了哪些功能。可能是ex25中的输入错误,也可能是您没有从网页复制/粘贴所有源代码。指向练习的链接提供了有关我键入和定义的代码的所有信息。我听从了Zeds的指示他的情况很好?我将再次检查代码是否有拼写错误。整本书似乎都有一个固定的指示,即每个练习中的第一块代码将保存到
ex???.py
。似乎OP已经这样做了,或者他们会得到一个
ImportError
,而不是
AttributeError
。我必须保存它。非常感谢大卫,我从来没有保存过它-\uu-Facepalm。。。非常感谢大家的帮助。@lvc我是Shaw作品的粉丝,但是超链接书籍的元指令的概念似乎很麻烦,因为每次隐含的元指令实际上都没有被引用,否则在没有之前的课程的情况下浏览该课程的普通读者就会迷失方向。我认为,将额外的堆栈空间要求强加给已经负担过重的学习者不是一种好的教学方法。@user2276539没问题。很高兴我能帮忙。
python