From a26c2b259be8549de5ca8715c9604322160e8c65 Mon Sep 17 00:00:00 2001 From: dmay92 Date: Mon, 12 Dec 2022 22:30:05 +0300 Subject: [PATCH 1/2] code according to PEP8 --- main.py | 53 +++++++++++++++++++++++++++++++++-------------------- 1 file changed, 33 insertions(+), 20 deletions(-) diff --git a/main.py b/main.py index 1f468d66e..96fae4cff 100644 --- a/main.py +++ b/main.py @@ -3,38 +3,46 @@ def attack(char_name, char_class): if char_class == 'warrior': - return (f'{char_name} нанёс урон противнику равный {5 + randint(3, 5)}') + return (f'{char_name} нанёс противнику урон, равный ' + f'{5 + randint(3, 5)}') if char_class == 'mage': - return (f'{char_name} нанёс урон противнику равный {5 + randint(5, 10)}') + return (f'{char_name} нанёс противнику урон, равный ' + f'{5 + randint(5, 10)}') if char_class == 'healer': - return (f'{char_name} нанёс урон противнику равный {5 + randint(-3, -1)}') + return (f'{char_name} нанёс противнику урон, равный ' + f'{5 + randint(-3, -1)}') + + def defence(char_name, char_class): if char_class == 'warrior': - return (f'{char_name} блокировал {10 + randint(5, 10)} урона') + return (f'{char_name} блокировал {10 + randint(5, 10)} ед. урона') if char_class == 'mage': - return (f'{char_name} блокировал {10 + randint(-2, 2)} урона') + return (f'{char_name} блокировал {10 + randint(-2, 2)} ед. урона') if char_class == 'healer': - return (f'{char_name} блокировал {10 + randint(2, 5)} урона') + return (f'{char_name} блокировал {10 + randint(2, 5)} ед. урона') + + def special(char_name, char_class): - if char_class == 'warrior': - return (f'{char_name} применил специальное умение «Выносливость {80 + 25}»') + if char_class == 'warrior': + return (f'{char_name} применил специальное умение ' + f'«Выносливость {80 + 25}»') if char_class == 'mage': return (f'{char_name} применил специальное умение «Атака {5 + 40}»') if char_class == 'healer': return (f'{char_name} применил специальное умение «Защита {10 + 30}»') - - def start_training(char_name, char_class): if char_class == 'warrior': - print(f'{char_name}, ты Воитель — отличный боец ближнего боя.') + print(f'{char_name}, ты Воитель — великий мастер ближнего боя.') if char_class == 'mage': print(f'{char_name}, ты Маг — превосходный укротитель стихий.') if char_class == 'healer': print(f'{char_name}, ты Лекарь — чародей, способный исцелять раны.') print('Потренируйся управлять своими навыками.') - print('Введи одну из команд: attack — чтобы атаковать противника, defence — чтобы блокировать атаку противника или special — чтобы использовать свою суперсилу.') + print('Введи одну из команд: attack — чтобы атаковать противника, ' + 'defence — чтобы блокировать атаку противника или ' + 'special — чтобы использовать свою суперсилу.') print('Если не хочешь тренироваться, введи команду skip.') cmd = None while cmd != 'skip': @@ -47,18 +55,26 @@ def start_training(char_name, char_class): print(special(char_name, char_class)) return 'Тренировка окончена.' + def choice_char_class(): approve_choice = None char_class = None while approve_choice != 'y': - char_class = input('Введи название персонажа, за которого хочешь играть: Воитель — warrior, Маг — mage, Лекарь — healer: ') + char_class = input('Введи название персонажа, ' + 'за которого хочешь играть: Воитель — warrior, ' + 'Маг — mage, Лекарь — healer: ') if char_class == 'warrior': - print('Воитель — дерзкий воин ближнего боя. Сильный, выносливый и отважный.') + print('Воитель — дерзкий воин ближнего боя. ' + 'Сильный, выносливый и отважный.') if char_class == 'mage': - print('Маг — находчивый воин дальнего боя. Обладает высоким интеллектом.') + print('Маг — находчивый воин дальнего боя. ' + 'Обладает высоким интеллектом.') if char_class == 'healer': - print('Лекарь — могущественный заклинатель. Черпает силы из природы, веры и духов.') - approve_choice = input('Нажми (Y), чтобы подтвердить выбор, или любую другую кнопку, чтобы выбрать другого персонажа ').lower() + print('Лекарь — могущественный заклинатель. ' + 'Черпает силы из природы, веры и духов.') + approve_choice = input('Нажми (Y), чтобы подтвердить выбор, ' + 'или любую другую кнопку, ' + 'чтобы выбрать другого персонажа ').lower() return char_class @@ -72,6 +88,3 @@ def main(): print('Воитель, Маг, Лекарь') char_class = choice_char_class() print(start_training(char_name, char_class)) - - -main() \ No newline at end of file From 6384bf19789703d69edefb4e4546dc6c5b030e02 Mon Sep 17 00:00:00 2001 From: dmay92 Date: Mon, 12 Dec 2022 22:37:24 +0300 Subject: [PATCH 2/2] annotation --- main.py | 71 ++++++++++++++++++++++++++++++++------------------------- 1 file changed, 40 insertions(+), 31 deletions(-) diff --git a/main.py b/main.py index 96fae4cff..7fd716077 100644 --- a/main.py +++ b/main.py @@ -1,50 +1,59 @@ from random import randint -def attack(char_name, char_class): +def attack(char_name: str, char_class: str) -> str: if char_class == 'warrior': - return (f'{char_name} нанёс противнику урон, равный ' - f'{5 + randint(3, 5)}') + return (f'{char_name} нанёс урон ' + f'противнику равный {5 + randint(3, 5)}') if char_class == 'mage': - return (f'{char_name} нанёс противнику урон, равный ' - f'{5 + randint(5, 10)}') + return (f'{char_name} нанёс урон ' + f'противнику равный {5 + randint(5, 10)}') if char_class == 'healer': - return (f'{char_name} нанёс противнику урон, равный ' - f'{5 + randint(-3, -1)}') + return (f'{char_name} нанёс урон ' + f'противнику равный {5 + randint(-3, -1)}') -def defence(char_name, char_class): +def defence(char_name: str, char_class: str) -> str: if char_class == 'warrior': - return (f'{char_name} блокировал {10 + randint(5, 10)} ед. урона') + return (f'{char_name} блокировал ' + f'{10 + randint(5, 10)} урона') if char_class == 'mage': - return (f'{char_name} блокировал {10 + randint(-2, 2)} ед. урона') + return (f'{char_name} блокировал' + f' {10 + randint(-2, 2)} урона') if char_class == 'healer': - return (f'{char_name} блокировал {10 + randint(2, 5)} ед. урона') + return (f'{char_name} блокировал ' + f'{10 + randint(2, 5)} урона') -def special(char_name, char_class): +def special(char_name: str, char_class: str) -> str: if char_class == 'warrior': - return (f'{char_name} применил специальное умение ' - f'«Выносливость {80 + 25}»') + return (f'{char_name} применил специальное ' + f'умение «Выносливость {80 + 25}»') if char_class == 'mage': - return (f'{char_name} применил специальное умение «Атака {5 + 40}»') + return (f'{char_name} применил специальное ' + f'умение «Атака {5 + 40}»') if char_class == 'healer': - return (f'{char_name} применил специальное умение «Защита {10 + 30}»') + return (f'{char_name} применил специальное ' + f'умение «Защита {10 + 30}»') -def start_training(char_name, char_class): +def start_training(char_name: str, char_class: str) -> str: if char_class == 'warrior': - print(f'{char_name}, ты Воитель — великий мастер ближнего боя.') + print(f'{char_name}, ты Воитель — ' + f'отличный боец ближнего боя.') if char_class == 'mage': - print(f'{char_name}, ты Маг — превосходный укротитель стихий.') + print(f'{char_name}, ты Маг — ' + f'превосходный укротитель стихий.') if char_class == 'healer': - print(f'{char_name}, ты Лекарь — чародей, способный исцелять раны.') + print(f'{char_name}, ты Лекарь — ' + f'чародей, способный исцелять раны.') print('Потренируйся управлять своими навыками.') - print('Введи одну из команд: attack — чтобы атаковать противника, ' - 'defence — чтобы блокировать атаку противника или ' - 'special — чтобы использовать свою суперсилу.') + print('Введи одну из команд: attack — ' + 'чтобы атаковать противника, defence — ' + 'чтобы блокировать атаку противника или special — ' + 'чтобы использовать свою суперсилу.') print('Если не хочешь тренироваться, введи команду skip.') - cmd = None + cmd: str = None while cmd != 'skip': cmd = input('Введи команду: ') if cmd == 'attack': @@ -56,13 +65,13 @@ def start_training(char_name, char_class): return 'Тренировка окончена.' -def choice_char_class(): - approve_choice = None - char_class = None +def choice_char_class() -> str: + approve_choice: str = None + char_class: str = None while approve_choice != 'y': char_class = input('Введи название персонажа, ' - 'за которого хочешь играть: Воитель — warrior, ' - 'Маг — mage, Лекарь — healer: ') + 'за которого хочешь играть: ' + 'Воитель — warrior, Маг — mage, Лекарь — healer: ') if char_class == 'warrior': print('Воитель — дерзкий воин ближнего боя. ' 'Сильный, выносливый и отважный.') @@ -81,10 +90,10 @@ def choice_char_class(): def main(): print('Приветствую тебя, искатель приключений!') print('Прежде чем начать игру...') - char_name = input('...назови себя: ') + char_name: str = input('...назови себя: ') print(f'Здравствуй, {char_name}! ' 'Сейчас твоя выносливость — 80, атака — 5 и защита — 10.') print('Ты можешь выбрать один из трёх путей силы:') print('Воитель, Маг, Лекарь') - char_class = choice_char_class() + char_class: str = choice_char_class() print(start_training(char_name, char_class))