pythonでゲームを作成することができるのですか?
このような疑問にお答えします。
pythonでゲームを作成することは可能です。
pythonでゲームを作成することができるライブラリとしては、【Pygame】があります。
Pygameをインストールする手順は下記のとおりです。
| 1 | pip install pygame | 
pythonプロンプトを起動し、下記のプログラムを実行して、importエラーが発生しなければインストール成功です。
| 1 | import pygame | 
ゲーム画面の実装方法
背景画像の読み込み、配置処理は以下のようになります。
| 1 2 3 | 	# 背景画像 	back_image = GameObject("background.png", width=400, height=300) 	back_image.fn_set_Rect(back_image.fn_get_Rect()) | 
プレイヤー画像の読み込み、配置処理は以下のようになります。
| 1 2 3 4 | 	# player画像 	player_image = GameObject("character01.png", width=48, height=48) 	player_image.fn_set_Rect(player_pos) 	player_image.fn_set_area(area=(0, 0, 45, 45)) | 
キャラクター画像、背景画像は以下のリンク先のものを使用しています。
今回は、キー操作とマウスポインタの状態に応じてキャラクターを制御します。
キー操作によるキャラクター制御は、以下になります。
矢印キーが押下されたときのキャラクターの動作について処理を記述します。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |     # キーイベント     press_key = pygame.key.get_pressed()     if press_key[K_LEFT]:         player_image.rect_obj.move_ip(-5, 0)         press_index = fn_update_run_image(press_index)         player_image.fn_set_area((player_image.width*press_index, player_image.height, player_image.width, player_image.height))     elif press_key[K_RIGHT]:         player_image.rect_obj.move_ip(5, 0)         press_index = fn_update_run_image(press_index)         player_image.fn_set_area((player_image.width*press_index, player_image.height*2, player_image.width, player_image.height))     elif press_key[K_UP]:         player_image.rect_obj.move_ip(0, -5)         press_index = fn_update_run_image(press_index)         player_image.fn_set_area((player_image.width*press_index, player_image.height*3, player_image.width, player_image.height))     elif press_key[K_DOWN]:         player_image.rect_obj.move_ip(0, 5)         press_index = fn_update_run_image(press_index)         player_image.fn_set_area((player_image.width*press_index, 0, player_image.width, player_image.height))     else:         pass | 
マウスポインタによるキャラクター制御は、以下になります。
| 1 2 3 |             event.type == MOUSEMOTION:             x, y = event.pos             player_image.fn_set_Rect((x, y, x+player_image.width, y+player_image.height)) | 
ソースコード全体は、以下になります。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 | # coding: utf-8 import pygame from pygame.locals import * import sys class GameObject: 	def __init__(self, filename, width, height): 		self.image_size = (width, height) 		self.width = width 		self.height = height 		self.image_obj = pygame.image.load(filename).convert_alpha() 		self.rect_obj = self.image_obj.get_rect() 		self.area = (0, 0, width, height) 	def fn_set_Rect(self, rect): 		self.rect_obj = pygame.Rect(rect) 	def fn_get_Rect(self): 		return self.rect_obj 	def fn_set_area(self, area): 		self.area = area 	def fn_get_area(self): 		return self.area def fn_update_run_image(press_index): 	if press_index == 0: 		press_index = 1 	elif press_index == 1: 		press_index = 2 	elif press_index == 2: 		press_index = 0 	else: 		pass 	return press_index def fn_game_main(): 	disp_size = (400, 300) 	player_pos = (200, 150, 245, 195) 	pygame.init() 	pygame.display.set_mode(disp_size, 0, 32) 	screen = pygame.display.get_surface() 	pygame.display.set_caption("sample") 	# 背景画像 	back_image = GameObject("background.png", width=400, height=300) 	back_image.fn_set_Rect(back_image.fn_get_Rect()) 	# player画像 	player_image = GameObject("character01.png", width=48, height=48) 	player_image.fn_set_Rect(player_pos) 	player_image.fn_set_area(area=(0, 0, 45, 45)) 	press_index = 0 	while True: 		# キーイベント 		press_key = pygame.key.get_pressed() 		if press_key[K_LEFT]: 			player_image.rect_obj.move_ip(-5, 0) 			press_index = fn_update_run_image(press_index) 			player_image.fn_set_area((player_image.width*press_index, player_image.height, player_image.width, player_image.height)) 		elif press_key[K_RIGHT]: 			player_image.rect_obj.move_ip(5, 0) 			press_index = fn_update_run_image(press_index) 			player_image.fn_set_area((player_image.width*press_index, player_image.height*2, player_image.width, player_image.height)) 		elif press_key[K_UP]: 			player_image.rect_obj.move_ip(0, -5) 			press_index = fn_update_run_image(press_index) 			player_image.fn_set_area((player_image.width*press_index, player_image.height*3, player_image.width, player_image.height)) 		elif press_key[K_DOWN]: 			player_image.rect_obj.move_ip(0, 5) 			press_index = fn_update_run_image(press_index) 			player_image.fn_set_area((player_image.width*press_index, 0, player_image.width, player_image.height)) 		else: 			pass 		for event in pygame.event.get(): 			if event.type == QUIT: 				pygame.quit() 				sys.exit() 			elif event.type == MOUSEMOTION: 				x, y = event.pos 				player_image.fn_set_Rect((x, y, x+player_image.width, y+player_image.height)) 		pygame.display.update() # 画面更新 		pygame.time.wait(30) # 更新待ち時間 		screen.fill((0, 20, 0, 0)) 		screen.blit(back_image.image_obj, back_image.rect_obj) # 背景画像描画 		screen.blit(player_image.image_obj, player_image.rect_obj, area=player_image.fn_get_area()) # player画像描画 if __name__ == '__main__': 	fn_game_main() | 
実装したゲームの動作は、以下のようになります。

このように、pythonでゲームを作成することは割と可能なのではないでしょうか。
是非試してみてください。
 
  
  
  
  