omgit
@omgit
Изучаю Python

Как сделать проверку ввода в строке 24 если пользователь ввел что-то меньше 1 или больше 5 то выводило бы НЕПРАВИЛЬНЫЙ ВВОД?

import random

stats = []
attributes = 5

for i in range(attributes):
    r = random.randint(60, 80)
    stats.append(r)
       
Fireball = [12, 15, 28, 10, 5]

while True:
    print('Stats up: ', end='')
    for i in range(attributes):
        print(stats[i], end=' ')
        
    print('\n\t[1] - Strength\
        \n\t[2] - Dexterity\
        \n\t[3] - Intelligence\
        \n\t[4] - Wisdom\
        \n\t[5] - Charisma')
    select = int(input('Select: '))
    select -= 1
    # check
    stats[select] = stats[select] + random.randint(5, 15)
    for i in range(len(stats)):
        if i == select:
            continue
        stats[i] = stats[i] - random.randint(5, 15)
    print('Stats up: ', end='')
    for i in range(attributes):
        print(stats[i], end=' ')

    print('\n\t[1] - Fireball') #
    select = int(input('Select shoot: '))
    if select == 1:
        for i in range(attributes):
            stats[i] -= Fireball[i]
    #elif
    #else

    # check may be exit
  • Вопрос задан
  • 61 просмотр
Пригласить эксперта
Ответы на вопрос 2
danila763
@danila763
Учу python, sql
Упрощенный код:
from random import randint

attributes = 5
stats = [randint(60, 80) for _ in range(attributes)]
Fireball = [12, 15, 28, 10, 5]

while True:
    print('Stats up: ', *stats)
        
    print('''
    [1] - Strength
    [2] - Dexterity
    [3] - Intelligence
    [4] - Wisdom
    [5] - Charisma
        ''')
    while True:
        select = int(input('Select: ')) - 1
    if select in [0, 1, 2, 3, 4]:
        break
    else:
        print('Select error')
    # check
    for i in range(attributes):
        stats[i] += randint(5, 15) if i == select else -randint(5, 15)
    
    print('Stats up: ', *stats)

    print('\n\t[1] - Fireball')
    
    select = int(input('Select shoot: '))
    
    if select == 1:
        for i in range(attributes):
            stats[i] -= Fireball[i]

    #elif
    #else

    # check may be exit
Ответ написан
Комментировать
@Drill
Вместо этих двух строк:
select = int(input('Select: '))
select -= 1


вставьте эти четыре:
select = input('Select: ')
while select not in ('1', '2', '3', '4', '5'):
    select = input('make the right choice...: ')
select = int(select) - 1
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект