Пишу код в 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
Answers & Comments
Ответ:
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 питоне, могут вылезти ошибки у вас - скиньте их