Предмет: Информатика,
автор: mayyalovalova
Пишу код в python. В любом случае выполняется первое условие, даже если выпадает человек, орк или вампир. Помогите пожалуйста
Вот код:
race =['fary', 'elf', 'dwarf', 'human', 'ork', 'vampire']
race1 =[random.choice(race) for i in range (1)]
print (race1)
if race1 == 'fary' or 'elf' or 'human':
print 'aaa'
else:
print 'bbb'
Вместо else писала elif, но тоже не помогает. Версия python 2.7.18
Ответы
Автор ответа:
1
Ответ:
import random
race =['fary', 'elf', 'dwarf', 'human', 'ork', 'vampire']
race1 =random.choice(race)
print (race1)
if race1 == 'fary' or race1 == 'elf' or race1 == 'human':
print("aaa")
else:
print("bbb")
Объяснение:
Вы зачем то сделали список из 1 элемента, к тому же условие в if некорректное, "elf" и "human" ни к чему не привязаны и сами являются логическими высказываниями(истинными) и из-за этого всегда возвращалось ааа
Я писал на 3.x питоне, могут вылезти ошибки у вас - скиньте их
mayyalovalova:
Спасибо за ваш ответ) Попробовала, как вы сказали, но появилась другая проблема. Теперь выполняется только второе условие
Похожие вопросы
Предмет: Английский язык,
автор: нак10
Предмет: Русский язык,
автор: mixalish
Предмет: Українська мова,
автор: vasusay1976
Предмет: Информатика,
автор: Viktoha9
Предмет: Алгебра,
автор: polymolodetska