#python
Вопрос:
Я создал скрипт, который отображает область 9 на 9, окруженную зелеными буквами, используя операторы if, я не очень хорошо разбираюсь в деталях, но вот мой код для печати
Что он делает, так это определяет, какая переменная x для игрока и переменная x для еды, а затем печатает строку соответственно.
Есть ли способ сделать то же самое, но быстрее и намного проще для чтения?
https://replit.com/@DanielPoff/Food-Game#main.py
def printscreenfood(): #takes care of printing the screen with the player and food on the same line
print(
Fore.GREEN Back.GREEN ' ',
Fore.WHITE Back.WHITE ' ' if x == 1 else Fore.RED Back.RED
' ' if foody == fy and foodx == 1 else Fore.BLACK Back.BLACK ' ',
Fore.WHITE Back.WHITE ' ' if x == 2 else Fore.RED Back.RED
' ' if foody == fy and foodx == 2 else Fore.BLACK Back.BLACK ' ',
Fore.WHITE Back.WHITE ' ' if x == 3 else Fore.RED Back.RED
' ' if foody == fy and foodx == 3 else Fore.BLACK Back.BLACK ' ',
Fore.WHITE Back.WHITE ' ' if x == 4 else Fore.RED Back.RED
' ' if foody == fy and foodx == 4 else Fore.BLACK Back.BLACK ' ',
Fore.WHITE Back.WHITE ' ' if x == 5 else Fore.RED Back.RED
' ' if foody == fy and foodx == 5 else Fore.BLACK Back.BLACK ' ',
Fore.WHITE Back.WHITE ' ' if x == 6 else Fore.RED Back.RED
' ' if foody == fy and foodx == 6 else Fore.BLACK Back.BLACK ' ',
Fore.WHITE Back.WHITE ' ' if x == 7 else Fore.RED Back.RED
' ' if foody == fy and foodx == 7 else Fore.BLACK Back.BLACK ' ',
Fore.WHITE Back.WHITE ' ' if x == 8 else Fore.RED Back.RED
' ' if foody == fy and foodx == 8 else Fore.BLACK Back.BLACK ' ',
Fore.WHITE Back.WHITE ' ' if x == 9 else Fore.RED Back.RED
' ' if foody == fy and foodx == 9 else Fore.BLACK Back.BLACK ' ',
Fore.GREEN Back.GREEN ' ', Style.RESET_ALL)
Комментарии:
1. Вы можете использовать объект карты.