choice_chance 2021-06-25 23:10 采纳率: 100%
浏览 994
已采纳

照理说运行代码后应该出现一个pygame窗口,但为什么没有显示出来?

​
import sys
import pygame

class AlienInvasion:
	"""管理游戏资源和行为"""
	
	def _init_(self):
		"""初始化游戏并创建游戏资源"""
		pygame.init()
		
		self.screen = pygame.display.set_mode((1200,800))
		pygame.display.set_caption("Alien Invasion")
		
	def run_game(self):
		"""开始游戏主循环"""
		while True:
			#监视键盘和鼠标事件
			for event in pygame.event.get():
				if even.type == pygame.QUIT:
					sys.exit()
			
			#显示最近绘制的屏幕
			pygame.display.flip()

_name_ = '_main_'

if _name_ == '_main_':
	#创建游戏实例并运行游戏
	ai = AlienInvasion()
	ai.run_game()

​

除了第26行的_name_ = '_main_'以外,其他的我都是按照书上的代码敲的。如果去掉第26行的话,它就会报错,说"_name_"没有定义,所以我加了这一句,但它还是没出现pygame窗口,然后我就搞不懂了,不知道问题出在哪里。下面的是代码运行后的终端。

 

  • 写回答

3条回答 默认 最新

  • 快ྂ乐ྂ至ྂ上ྂ 2021-06-25 23:15
    关注

    第26行不要,这个不是你来定义的,第28行 是 __name__=='__main__' 所有的都是双下划线

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载