为什么可以';我不能从单独的类调用函数吗?python
这是我的密码为什么可以';我不能从单独的类调用函数吗?python,python,Python,这是我的密码 # import all the modules from Fesnoria_Main import * import pygame # Setup # change window settings screen = pygame.display.set_mode((600, 600), pygame.RESIZABLE) pygame.display.set_caption('Fesnoria - An epic journey.') #define configurati
# import all the modules
from Fesnoria_Main import *
import pygame
# Setup
# change window settings
screen = pygame.display.set_mode((600, 600), pygame.RESIZABLE)
pygame.display.set_caption('Fesnoria - An epic journey.')
#define configuration variables here
HERO_MOVE_SPEED = 20 # pixels per second
MAP_FILENAME = 'resources/tmx/Fesnoria Town.tmx'
MUSIC_FILENAME = "resources/music/Forest_Song.mp3"
gamesetup = Main()
gamesetup.run()
我想在另一个python模块Fesnoria_Main的Main()类中调用函数run(),如下所示
class Main(object):
def run(self):
print "start game"
但是当我运行脚本时,我得到了一个错误
NameError: name 'Main' is not defined
但它显然是define,因为我在顶部导入了模块,并且在IDE中它识别Main()是模块Fesnoria_Main中的一个类
关于如何解决这个问题,有什么想法吗?这个简单的例子对我很有用: 档案:
class Main(object):
def run(self):
print "start game"
# import all the modules
from Fesnoria_Main import *
gamesetup = Main()
gamesetup.run()
bla.py内容:
class Main(object):
def run(self):
print "start game"
# import all the modules
from Fesnoria_Main import *
gamesetup = Main()
gamesetup.run()
然后使用以下命令运行它:
python bla.py
这张照片是:
start game
因此,我将尝试从这个最小的示例开始,然后返回查找错误。当您尝试仅导入Main时会发生什么<代码>从Fesnoria\u Main导入Main这只是一个猜测,但可能您没有将包中的模块uuuu init\uuuuuuuuuuy.py添加到uuuuuuu所有uuuuuuuuuuu列表中?除了从
pygame
部分,它似乎按预期工作,它打印“开始游戏”。您可能应该发布一个最小的、完整的、可验证的示例()。