大家好我是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'
我正在使用python 2.7 Windows 7请帮助..... http://learnpythonthehardway.org/book/ex25.html
答案 0 :(得分:3)
在我看来,练习并没有指示学习者在导入之前保存文件。为了使其工作,您必须使用文本编辑器将名为ex25.py的文件中定义break_words函数的代码保存。然后,从同一目录打开python解释器,输入:
python
你应该能够导入ex25并运行ex25.py模块定义的break_words函数。
答案 1 :(得分:2)
ex25.py
链接中的代码确实包含该功能 - 当您将代码转录到文件中时,您的代码并不表示您错过了它。检查您的ex25.py
是否包含该页面中的所有代码,特别是包含此功能(它是最顶层的代码):
def break_words(stuff):
"""This function will break up words for us."""
words = stuff.split(' ')
return words
考虑将代码粘贴到您的编辑器中,而不是转录它以避免这样的错误。