import - 导入 - 在python中,如何实例化类的实例?

145 2

我是python的新手,

我熟悉java,所以我在python中创建一个类,然后创建一个类的实例,用作同一目录中的对象。

下面是我尝试这么做的方法:

在main.py内-


import player


p1 = player.Player(300, 300, 64, 64)



下面是我在player.py中的播放器类


import main


class Player:


 def __init__(self, x, y, width, height):


 self.x = x


 self.y = y


 self.width = width


 self.height = height


 self.vel = 15


 self.left = False


 self.right = False


 self.walkCount = 0



这将导致:

AttributeError : module'player'has no attribute'Player'

经过一些研究,我也尝试了:


from player import Player


p1 = Player(300, 300, 64, 64)



结果:ImportError : cannot import name'Player'from'player'(C:UsersAlexPycharmProjectsBunkerGameplayer.py )

时间: 原作者:

143 1

你很可能已经安装了一个名为player的模块,python正在导入as而不是本地文件player.py ,尝试将文件player.py重命名为其他内容,或者在控制台上执行pip uninstall player并执行。

注意错误说明cannot import name 'Player' from 'player'表示python正在访问一个名为player的模块,但是,无法访问类player

原作者:
127 2

你应该像这样编写导入:


import Player



p1 = Player(300, 300, 64, 64)



您还可以编写如下内容:


import Player as p



p1 = p(300, 300, 64, 64)



原作者:
90 5

只要去掉你的播放器页面上的import main

第一个错误:


import player



p1 = player.Player(300, 300, 64, 64)



这应该是:


import player



p1 = Player(300, 300, 64, 64)



以下是发生的情况的例子:


class Player:


 def __init__(self, name, age):


 self.name = name


 self.age = age



player = Player # setting the class to variable



player.name = 'Johnny' # .name is the attribute of the Player class


print(player.name)



输出:

 
'Johnny'



 

你已经这样做了:


player.Player.name = 'Johnny'


print(player.name)



返回你的错误:


Traceback (most recent call last): File"main.py", 


line 8, in <module> 


player.Player.name = 'Johnny'AttributeError: type object 'Player' has no attribute 'Player'



原作者:
...