Python AttributeError:';模块';对象没有属性';初始';

Python AttributeError:';模块';对象没有属性';初始';,python,python-idle,livewires,Python,Python Idle,Livewires,我正在运行一个简单的python文件: from livewires import games games.init(screen_width = 640, screen_height = 480, fps = 50) games.screen.mainloop() 当我在空闲状态下运行时,我会在标题中打印错误。 我从一本书上复制并粘贴了这个代码。我正处于初学者的早期阶段,所以我知道的不多。我确信我已经正确安装了livewires,因为我已经用它的模块运行了其他程序。(天哪,我知道这可能根

我正在运行一个简单的python文件:

from livewires import games

games.init(screen_width = 640, screen_height = 480, fps = 50)

games.screen.mainloop()
当我在空闲状态下运行时,我会在标题中打印错误。
我从一本书上复制并粘贴了这个代码。我正处于初学者的早期阶段,所以我知道的不多。我确信我已经正确安装了livewires,因为我已经用它的模块运行了其他程序。(天哪,我知道这可能根本不是正确的术语,对不起。)我并不是在寻找解决这个问题的方法,(尽管那也很好),我只是希望有人能准确地解释问题所在。我从一本书中复制了代码,所以我不明白我做错了什么。我100%肯定没有打字错误。

好吧,四处搜索,似乎这就是livewires网站:人们可以在这里下载livewires软件包

还有,下面的一些代码:看起来像他在这里发布的(“披萨恐慌游戏”)

下载和解包livewires表明,游戏模块中确实没有
init
功能(正如前面提到的评论)

要么这本书有不起作用的例子(考虑到它解释这个例子的深度,这是值得怀疑的);或者livewires软件包在该书编写时和现在之间发生了变化(可能性更大)

livewires网站上还有其他一些例子,我认为你会更成功。
我建议你扔掉这本书,因为你很可能会一直遇到这样的障碍。谷歌搜索将发现许多其他免费的python教程,这些教程更加更新,并且更容易理解


本页有一些供初学者使用的链接:

我刚开始读迈克尔·道森的同一本书《Python编程第三版》,遇到了同样的问题。这本书写完后,情况就变了

如果您仍然想创建窗口,以下是我使用的代码,它可以正常工作:

from livewires import games

#This is the code M. Dawson has in the book
#games.init(screen_width = 640, screen_height = 480, fps = 50)
#games.screen.mainloop()

my_screen = games.Screen(width = 640, height = 480)
my_screen.mainloop(fps = 50)

屏幕现在被视为要实例化的对象。Screen类不再在其构造函数中接受fps,现在将该fps传递到mainloop方法中。如果不将fps传递到mainloop方法中,它将默认为50。

可以从book companion网站下载一个旧版本的livewires,该版本与“Python编程为绝对初学者”中的代码一起工作:


我遇到了同样的问题,然后我从他链接的slejdops网站下载了代码。听起来它的创造者愿意接受这样的想法,因为他们总是用教科书把这些东西锁起来。这使它既正常又合法

所以到这里来。祝你快乐并好运:

意思是解释器在您刚刚导入的模块“games”中找不到任何名为“init”的属性(本例中为函数)。在不知道模块是什么或它所属的包/库的情况下,我不能再说什么了。我四处搜索了这个错误,但它似乎已经过时了。如果您在
livewires
程序包中找到
games.py
文件并将其发布到此处,也许有人可以提供帮助。@Santa--模块是“games”,程序包是“livewires”--您阅读了文章中的代码了吗?是的。我是说我不知道那个模块和那个包是什么,或者他们应该做什么。所以,/shrug.games.py文件相当大——大约1000多行。所以我不认为我可以发布它。老实说,livewires已经过时,我并不感到惊讶。有代码的那本书大约是4年前写的。我刚刚很难找到一本不太贵的python书籍。不过,谢谢你的回复。