[英]Separating classes in different files in Python
我是一个初学者,试图构建一个简单的游戏。 为方便起见,我想将我的类(大约六个)分成单独的文件。 这些类相互依赖并相互使用,其中 Game() 类是“主要”类。
然而,这些类似乎要么无法找到彼此,要么至少不能互相调用。 我尝试了两件事:
import game
import player
import powerup
等等 但是,当调用方法(例如player.move()
或game.reset()
)时,我收到此错误: TypeError: 'module' object is not callable
from game import game
from player import player
from powerup import powerup
这不起作用并出现此错误: ImportError: cannot import name 'player' from 'player' (C:\\Users\\user\\Documents\\Python\\ballgame\\player.py)
需要明确的是,每个文件都以类命名,并且只包含一个类,例如文件 player.py 中的类 Player() 所有文件都在一个文件夹中,没有子文件夹。 我还创建了一个空的init .py,因为我读到这是必需的。
文件结构:
folder ballgame
--- __init___.py
---game.py
---player.py
---powerup.py
每个文件看起来像这样:
import game
import player
import [all other classes]
Class()
methods()
我应该如何构建类以使其工作? 我应该将每个类导入到每个文件中吗?
我认为这没有问题: from player import Player <<-- 在这里大写您确定没有错字或遗漏了一些大写字母,您将其写得很小。
我认为类通常以大写字母开头,你写的很小,你确定它在类的文件中真的很小。
确保文件名和类名与您导入的完全相同
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.